Raspbian Package Auto-Building

Build log for groonga (6.1.0-2) on armhf

groonga6.1.0-2armhf → 2016-11-06 07:35:32

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

+==============================================================================+
| groonga 6.1.0-2 (armhf)                      Sun, 06 Nov 2016 06:44:38 +0000 |
+==============================================================================+

Package: groonga
Version: 6.1.0-2
Source Version: 6.1.0-2
Distribution: stretch-staging
Machine Architecture: armhf
Host Architecture: armhf
Build Architecture: armhf

I: NOTICE: Log filtering will replace 'var/run/schroot/mount/stretch-staging-armhf-sbuild-1a4c55a3-8978-4b1b-9286-f99eb1ec668d' 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 [9448 kB]
Get:3 http://172.17.0.1/private stretch-staging/main armhf Packages [11.4 MB]
Fetched 20.8 MB in 24s (845 kB/s)
Reading package lists...

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


Check APT
---------

Checking available source versions...

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

Reading package lists...
Need to get 14.0 MB of source archives.
Get:1 http://172.17.0.1/private stretch-staging/main groonga 6.1.0-2 (dsc) [2739 B]
Get:2 http://172.17.0.1/private stretch-staging/main groonga 6.1.0-2 (tar) [13.9 MB]
Get:3 http://172.17.0.1/private stretch-staging/main groonga 6.1.0-2 (diff) [94.5 kB]
Fetched 14.0 MB in 1s (9648 kB/s)
Download complete and in download only mode
I: NOTICE: Log filtering will replace 'build/groonga-j5ybzs/groonga-6.1.0' with '<<PKGBUILDDIR>>'
I: NOTICE: Log filtering will replace 'build/groonga-j5ybzs' 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-WKCBBc/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-WKCBBc/gpg/pubring.kbx' created
gpg: /<<BUILDDIR>>/resolver-WKCBBc/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-WKCBBc/apt_archive ./ InRelease
Get:2 copy:/<<BUILDDIR>>/resolver-WKCBBc/apt_archive ./ Release [957 B]
Get:3 copy:/<<BUILDDIR>>/resolver-WKCBBc/apt_archive ./ Release.gpg [342 B]
Ign:3 copy:/<<BUILDDIR>>/resolver-WKCBBc/apt_archive ./ Release.gpg
Get:4 copy:/<<BUILDDIR>>/resolver-WKCBBc/apt_archive ./ Sources [349 B]
Get:5 copy:/<<BUILDDIR>>/resolver-WKCBBc/apt_archive ./ Packages [432 B]
Fetched 2080 B in 0s (3355 B/s)
Reading package lists...
W: copy:///<<BUILDDIR>>/resolver-WKCBBc/apt_archive/./Release.gpg: The key(s) in the keyring /etc/apt/trusted.gpg.d/sbuild-build-depends-archive.gpg are ignored as the file is not readable by user 'root' executing apt-key.
W: GPG error: copy:/<<BUILDDIR>>/resolver-WKCBBc/apt_archive ./ Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 35506D9A48F77B2E
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:
  dirmngr fuse2fs gnupg-l10n libffi6 libfuse2 libgnutls30 libhogweed4
  libldap-2.4-2 libnettle6 libp11-kit0 libsasl2-2 libsasl2-modules
  libsasl2-modules-db libssl1.0.2 libtasn1-6 manpages
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 9 not upgraded.
Need to get 762 B of archives.
After this operation, 0 B of additional disk space will be used.
Get:1 copy:/<<BUILDDIR>>/resolver-WKCBBc/apt_archive ./ sbuild-build-depends-core-dummy 0.invalid.0 [762 B]
debconf: delaying package configuration, since apt-utils is not installed
Fetched 762 B in 0s (0 B/s)
Selecting previously unselected package sbuild-build-depends-core-dummy.
(Reading database ... 13152 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) ...

+------------------------------------------------------------------------------+
| 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
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
dpkg-deb: building package 'sbuild-build-depends-groonga-dummy' in '/<<BUILDDIR>>/resolver-WKCBBc/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-WKCBBc/apt_archive ./ InRelease
Get:2 copy:/<<BUILDDIR>>/resolver-WKCBBc/apt_archive ./ Release [963 B]
Get:3 copy:/<<BUILDDIR>>/resolver-WKCBBc/apt_archive ./ Release.gpg [342 B]
Ign:3 copy:/<<BUILDDIR>>/resolver-WKCBBc/apt_archive ./ Release.gpg
Get:4 copy:/<<BUILDDIR>>/resolver-WKCBBc/apt_archive ./ Sources [567 B]
Get:5 copy:/<<BUILDDIR>>/resolver-WKCBBc/apt_archive ./ Packages [639 B]
Fetched 2511 B in 0s (3859 B/s)
Reading package lists...
W: copy:///<<BUILDDIR>>/resolver-WKCBBc/apt_archive/./Release.gpg: The key(s) in the keyring /etc/apt/trusted.gpg.d/sbuild-build-depends-archive.gpg are ignored as the file is not readable by user 'root' executing apt-key.
W: GPG error: copy:/<<BUILDDIR>>/resolver-WKCBBc/apt_archive ./ Release: The following signatures couldn't be verified because the public key is not available: NO_PUBKEY 35506D9A48F77B2E
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:
  dirmngr fuse2fs gnupg-l10n libfuse2 libgnutls30 libhogweed4 libldap-2.4-2
  libnettle6 libp11-kit0 libsasl2-2 libsasl2-modules libsasl2-modules-db
  libtasn1-6 manpages
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 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
  libstemmer-dev libstemmer0d libtimedate-perl libtool libunistring0 libxml2
  libzmq3-dev libzmq5 m4 man-db pkg-config po-debconf zlib1g-dev
Suggested packages:
  autoconf-archive gnu-standards autoconf-doc wamerican | wordlist whois
  vacation dh-make gettext-doc libasprintf-dev libgettextpo-dev groff
  libmsgpack-doc libtool-doc gfortran | fortran95-compiler gcj-jdk 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 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
  libstemmer-dev libstemmer0d libtimedate-perl libtool libunistring0 libxml2
  libzmq3-dev libzmq5 m4 man-db pkg-config po-debconf
  sbuild-build-depends-groonga-dummy zlib1g-dev
0 upgraded, 56 newly installed, 0 to remove and 9 not upgraded.
Need to get 23.8 MB/23.9 MB of archives.
After this operation, 88.9 MB of additional disk space will be used.
Get:1 copy:/<<BUILDDIR>>/resolver-WKCBBc/apt_archive ./ sbuild-build-depends-groonga-dummy 0.invalid.0 [834 B]
Get:2 http://172.17.0.1/private stretch-staging/main armhf groff-base armhf 1.22.3-8 [1087 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 man-db armhf 2.7.5-1 [975 kB]
Get:7 http://172.17.0.1/private stretch-staging/main armhf libpcrecpp0v5 armhf 2:8.39-2 [149 kB]
Get:8 http://172.17.0.1/private stretch-staging/main armhf libstemmer0d armhf 0+svn585-1 [53.5 kB]
Get:9 http://172.17.0.1/private stretch-staging/main armhf libmagic-mgc armhf 1:5.29-1 [219 kB]
Get:10 http://172.17.0.1/private stretch-staging/main armhf libmagic1 armhf 1:5.29-1 [104 kB]
Get:11 http://172.17.0.1/private stretch-staging/main armhf file armhf 1:5.29-1 [63.3 kB]
Get:12 http://172.17.0.1/private stretch-staging/main armhf gettext-base armhf 0.19.8.1-1 [117 kB]
Get:13 http://172.17.0.1/private stretch-staging/main armhf libevent-2.0-5 armhf 2.0.21-stable-2+b1 [133 kB]
Get:14 http://172.17.0.1/private stretch-staging/main armhf libicu57 armhf 57.1-4 [7407 kB]
Get:15 http://172.17.0.1/private stretch-staging/main armhf libxml2 armhf 2.9.4+dfsg1-2.1 [804 kB]
Get:16 http://172.17.0.1/private stretch-staging/main armhf libsigsegv2 armhf 2.10-5 [28.4 kB]
Get:17 http://172.17.0.1/private stretch-staging/main armhf m4 armhf 1.4.17-5 [239 kB]
Get:18 http://172.17.0.1/private stretch-staging/main armhf autoconf all 2.69-10 [338 kB]
Get:19 http://172.17.0.1/private stretch-staging/main armhf autotools-dev all 20160430.1 [72.6 kB]
Get:20 http://172.17.0.1/private stretch-staging/main armhf automake all 1:1.15-4 [735 kB]
Get:21 http://172.17.0.1/private stretch-staging/main armhf autopoint all 0.19.8.1-1 [433 kB]
Get:22 http://172.17.0.1/private stretch-staging/main armhf libtool all 2.4.6-2 [545 kB]
Get:23 http://172.17.0.1/private stretch-staging/main armhf dh-autoreconf all 12 [15.8 kB]
Get:24 http://172.17.0.1/private stretch-staging/main armhf libarchive-zip-perl all 1.59-1 [95.5 kB]
Get:25 http://172.17.0.1/private stretch-staging/main armhf libfile-stripnondeterminism-perl all 0.028-1 [14.6 kB]
Get:26 http://172.17.0.1/private stretch-staging/main armhf libtimedate-perl all 2.3000-2 [42.2 kB]
Get:27 http://172.17.0.1/private stretch-staging/main armhf dh-strip-nondeterminism all 0.028-1 [9020 B]
Get:28 http://172.17.0.1/private stretch-staging/main armhf libglib2.0-0 armhf 2.50.1-1 [2525 kB]
Get:29 http://172.17.0.1/private stretch-staging/main armhf libcroco3 armhf 0.6.11-2 [131 kB]
Get:30 http://172.17.0.1/private stretch-staging/main armhf libunistring0 armhf 0.9.6+really0.9.3-0.1 [252 kB]
Get:31 http://172.17.0.1/private stretch-staging/main armhf gettext armhf 0.19.8.1-1 [1433 kB]
Get:32 http://172.17.0.1/private stretch-staging/main armhf intltool-debian all 0.35.0+20060710.4 [26.3 kB]
Get:33 http://172.17.0.1/private stretch-staging/main armhf po-debconf all 1.0.20 [247 kB]
Get:34 http://172.17.0.1/private stretch-staging/main armhf debhelper all 10.2.2 [826 kB]
Get:35 http://172.17.0.1/private stretch-staging/main armhf libevent-core-2.0-5 armhf 2.0.21-stable-2+b1 [97.3 kB]
Get:36 http://172.17.0.1/private stretch-staging/main armhf libevent-extra-2.0-5 armhf 2.0.21-stable-2+b1 [81.4 kB]
Get:37 http://172.17.0.1/private stretch-staging/main armhf libevent-pthreads-2.0-5 armhf 2.0.21-stable-2+b1 [43.6 kB]
Get:38 http://172.17.0.1/private stretch-staging/main armhf libevent-openssl-2.0-5 armhf 2.0.21-stable-2+b1 [47.8 kB]
Get:39 http://172.17.0.1/private stretch-staging/main armhf libevent-dev armhf 2.0.21-stable-2+b1 [233 kB]
Get:40 http://172.17.0.1/private stretch-staging/main armhf libmecab2 armhf 0.996-1.3 [220 kB]
Get:41 http://172.17.0.1/private stretch-staging/main armhf libmecab-dev armhf 0.996-1.3 [277 kB]
Get:42 http://172.17.0.1/private stretch-staging/main armhf libpcre16-3 armhf 2:8.39-2 [235 kB]
Get:43 http://172.17.0.1/private stretch-staging/main armhf libpcre32-3 armhf 2:8.39-2 [227 kB]
Get:44 http://172.17.0.1/private stretch-staging/main armhf libpcre3-dev armhf 2:8.39-2 [568 kB]
Get:45 http://172.17.0.1/private stretch-staging/main armhf libsodium18 armhf 1.0.11-1 [145 kB]
Get:46 http://172.17.0.1/private stretch-staging/main armhf zlib1g-dev armhf 1:1.2.8.dfsg-2+b1 [197 kB]
Get:47 http://172.17.0.1/private stretch-staging/main armhf libssl-dev armhf 1.0.2j-1 [1149 kB]
Get:48 http://172.17.0.1/private stretch-staging/main armhf libstemmer-dev armhf 0+svn585-1 [62.2 kB]
Get:49 http://172.17.0.1/private stretch-staging/main armhf libzmq5 armhf 4.1.5-2 [151 kB]
Get:50 http://172.17.0.1/private stretch-staging/main armhf libzmq3-dev armhf 4.1.5-2 [188 kB]
Get:51 http://172.17.0.1/private stretch-staging/main armhf libjemalloc1 armhf 3.6.0-9 [81.4 kB]
Get:52 http://172.17.0.1/private stretch-staging/main armhf libjemalloc-dev armhf 3.6.0-9 [176 kB]
Get:53 http://172.17.0.1/private stretch-staging/main armhf liblz4-dev armhf 0.0~r131-2 [39.0 kB]
Get:54 http://172.17.0.1/private stretch-staging/main armhf libmsgpackc2 armhf 1.4.2-4 [16.1 kB]
Get:55 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 23.8 MB in 2s (8626 kB/s)
Selecting previously unselected package groff-base.
(Reading database ... 13152 files and directories currently installed.)
Preparing to unpack .../00-groff-base_1.22.3-8_armhf.deb ...
Unpacking groff-base (1.22.3-8) ...
Selecting previously unselected package libbsd0:armhf.
Preparing to unpack .../01-libbsd0_0.8.3-1_armhf.deb ...
Unpacking libbsd0:armhf (0.8.3-1) ...
Selecting previously unselected package bsdmainutils.
Preparing to unpack .../02-bsdmainutils_9.0.12_armhf.deb ...
Unpacking bsdmainutils (9.0.12) ...
Selecting previously unselected package libpipeline1:armhf.
Preparing to unpack .../03-libpipeline1_1.4.1-2_armhf.deb ...
Unpacking libpipeline1:armhf (1.4.1-2) ...
Selecting previously unselected package man-db.
Preparing to unpack .../04-man-db_2.7.5-1_armhf.deb ...
Unpacking man-db (2.7.5-1) ...
Selecting previously unselected package libpcrecpp0v5:armhf.
Preparing to unpack .../05-libpcrecpp0v5_2%3a8.39-2_armhf.deb ...
Unpacking libpcrecpp0v5:armhf (2:8.39-2) ...
Selecting previously unselected package libstemmer0d:armhf.
Preparing to unpack .../06-libstemmer0d_0+svn585-1_armhf.deb ...
Unpacking libstemmer0d:armhf (0+svn585-1) ...
Selecting previously unselected package libmagic-mgc.
Preparing to unpack .../07-libmagic-mgc_1%3a5.29-1_armhf.deb ...
Unpacking libmagic-mgc (1:5.29-1) ...
Selecting previously unselected package libmagic1:armhf.
Preparing to unpack .../08-libmagic1_1%3a5.29-1_armhf.deb ...
Unpacking libmagic1:armhf (1:5.29-1) ...
Selecting previously unselected package file.
Preparing to unpack .../09-file_1%3a5.29-1_armhf.deb ...
Unpacking file (1:5.29-1) ...
Selecting previously unselected package gettext-base.
Preparing to unpack .../10-gettext-base_0.19.8.1-1_armhf.deb ...
Unpacking gettext-base (0.19.8.1-1) ...
Selecting previously unselected package libevent-2.0-5:armhf.
Preparing to unpack .../11-libevent-2.0-5_2.0.21-stable-2+b1_armhf.deb ...
Unpacking libevent-2.0-5:armhf (2.0.21-stable-2+b1) ...
Selecting previously unselected package libicu57:armhf.
Preparing to unpack .../12-libicu57_57.1-4_armhf.deb ...
Unpacking libicu57:armhf (57.1-4) ...
Selecting previously unselected package libxml2:armhf.
Preparing to unpack .../13-libxml2_2.9.4+dfsg1-2.1_armhf.deb ...
Unpacking libxml2:armhf (2.9.4+dfsg1-2.1) ...
Selecting previously unselected package libsigsegv2:armhf.
Preparing to unpack .../14-libsigsegv2_2.10-5_armhf.deb ...
Unpacking libsigsegv2:armhf (2.10-5) ...
Selecting previously unselected package m4.
Preparing to unpack .../15-m4_1.4.17-5_armhf.deb ...
Unpacking m4 (1.4.17-5) ...
Selecting previously unselected package autoconf.
Preparing to unpack .../16-autoconf_2.69-10_all.deb ...
Unpacking autoconf (2.69-10) ...
Selecting previously unselected package autotools-dev.
Preparing to unpack .../17-autotools-dev_20160430.1_all.deb ...
Unpacking autotools-dev (20160430.1) ...
Selecting previously unselected package automake.
Preparing to unpack .../18-automake_1%3a1.15-4_all.deb ...
Unpacking automake (1:1.15-4) ...
Selecting previously unselected package autopoint.
Preparing to unpack .../19-autopoint_0.19.8.1-1_all.deb ...
Unpacking autopoint (0.19.8.1-1) ...
Selecting previously unselected package libtool.
Preparing to unpack .../20-libtool_2.4.6-2_all.deb ...
Unpacking libtool (2.4.6-2) ...
Selecting previously unselected package dh-autoreconf.
Preparing to unpack .../21-dh-autoreconf_12_all.deb ...
Unpacking dh-autoreconf (12) ...
Selecting previously unselected package libarchive-zip-perl.
Preparing to unpack .../22-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 .../23-libfile-stripnondeterminism-perl_0.028-1_all.deb ...
Unpacking libfile-stripnondeterminism-perl (0.028-1) ...
Selecting previously unselected package libtimedate-perl.
Preparing to unpack .../24-libtimedate-perl_2.3000-2_all.deb ...
Unpacking libtimedate-perl (2.3000-2) ...
Selecting previously unselected package dh-strip-nondeterminism.
Preparing to unpack .../25-dh-strip-nondeterminism_0.028-1_all.deb ...
Unpacking dh-strip-nondeterminism (0.028-1) ...
Selecting previously unselected package libglib2.0-0:armhf.
Preparing to unpack .../26-libglib2.0-0_2.50.1-1_armhf.deb ...
Unpacking libglib2.0-0:armhf (2.50.1-1) ...
Selecting previously unselected package libcroco3:armhf.
Preparing to unpack .../27-libcroco3_0.6.11-2_armhf.deb ...
Unpacking libcroco3:armhf (0.6.11-2) ...
Selecting previously unselected package libunistring0:armhf.
Preparing to unpack .../28-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 .../29-gettext_0.19.8.1-1_armhf.deb ...
Unpacking gettext (0.19.8.1-1) ...
Selecting previously unselected package intltool-debian.
Preparing to unpack .../30-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 .../31-po-debconf_1.0.20_all.deb ...
Unpacking po-debconf (1.0.20) ...
Selecting previously unselected package debhelper.
Preparing to unpack .../32-debhelper_10.2.2_all.deb ...
Unpacking debhelper (10.2.2) ...
Selecting previously unselected package libevent-core-2.0-5:armhf.
Preparing to unpack .../33-libevent-core-2.0-5_2.0.21-stable-2+b1_armhf.deb ...
Unpacking libevent-core-2.0-5:armhf (2.0.21-stable-2+b1) ...
Selecting previously unselected package libevent-extra-2.0-5:armhf.
Preparing to unpack .../34-libevent-extra-2.0-5_2.0.21-stable-2+b1_armhf.deb ...
Unpacking libevent-extra-2.0-5:armhf (2.0.21-stable-2+b1) ...
Selecting previously unselected package libevent-pthreads-2.0-5:armhf.
Preparing to unpack .../35-libevent-pthreads-2.0-5_2.0.21-stable-2+b1_armhf.deb ...
Unpacking libevent-pthreads-2.0-5:armhf (2.0.21-stable-2+b1) ...
Selecting previously unselected package libevent-openssl-2.0-5:armhf.
Preparing to unpack .../36-libevent-openssl-2.0-5_2.0.21-stable-2+b1_armhf.deb ...
Unpacking libevent-openssl-2.0-5:armhf (2.0.21-stable-2+b1) ...
Selecting previously unselected package libevent-dev.
Preparing to unpack .../37-libevent-dev_2.0.21-stable-2+b1_armhf.deb ...
Unpacking libevent-dev (2.0.21-stable-2+b1) ...
Selecting previously unselected package libmecab2.
Preparing to unpack .../38-libmecab2_0.996-1.3_armhf.deb ...
Unpacking libmecab2 (0.996-1.3) ...
Selecting previously unselected package libmecab-dev.
Preparing to unpack .../39-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 .../40-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 .../41-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 .../42-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 .../43-libsodium18_1.0.11-1_armhf.deb ...
Unpacking libsodium18:armhf (1.0.11-1) ...
Selecting previously unselected package zlib1g-dev:armhf.
Preparing to unpack .../44-zlib1g-dev_1%3a1.2.8.dfsg-2+b1_armhf.deb ...
Unpacking zlib1g-dev:armhf (1:1.2.8.dfsg-2+b1) ...
Selecting previously unselected package libssl-dev:armhf.
Preparing to unpack .../45-libssl-dev_1.0.2j-1_armhf.deb ...
Unpacking libssl-dev:armhf (1.0.2j-1) ...
Selecting previously unselected package libstemmer-dev:armhf.
Preparing to unpack .../46-libstemmer-dev_0+svn585-1_armhf.deb ...
Unpacking libstemmer-dev:armhf (0+svn585-1) ...
Selecting previously unselected package libzmq5:armhf.
Preparing to unpack .../47-libzmq5_4.1.5-2_armhf.deb ...
Unpacking libzmq5:armhf (4.1.5-2) ...
Selecting previously unselected package libzmq3-dev:armhf.
Preparing to unpack .../48-libzmq3-dev_4.1.5-2_armhf.deb ...
Unpacking libzmq3-dev:armhf (4.1.5-2) ...
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 libjemalloc1.
Preparing to unpack .../50-libjemalloc1_3.6.0-9_armhf.deb ...
Unpacking libjemalloc1 (3.6.0-9) ...
Selecting previously unselected package libjemalloc-dev.
Preparing to unpack .../51-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 .../52-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 .../53-libmsgpackc2_1.4.2-4_armhf.deb ...
Unpacking libmsgpackc2:armhf (1.4.2-4) ...
Selecting previously unselected package libmsgpack-dev.
Preparing to unpack .../54-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 .../55-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-8) ...
Setting up libglib2.0-0:armhf (2.50.1-1) ...
No schema files found: doing nothing.
Setting up gettext-base (0.19.8.1-1) ...
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.17-5) ...
Setting up libicu57:armhf (57.1-4) ...
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.1) ...
Setting up libstemmer-dev:armhf (0+svn585-1) ...
Setting up libmagic-mgc (1:5.29-1) ...
Setting up libmagic1:armhf (1:5.29-1) ...
Setting up libcroco3:armhf (0.6.11-2) ...
Setting up pkg-config (0.29-4) ...
Processing triggers for libc-bin (2.24-5+rpi1) ...
Setting up autotools-dev (20160430.1) ...
Setting up libunistring0:armhf (0.9.6+really0.9.3-0.1) ...
Setting up libevent-core-2.0-5:armhf (2.0.21-stable-2+b1) ...
Setting up libpcrecpp0v5:armhf (2:8.39-2) ...
Setting up libpcre32-3:armhf (2:8.39-2) ...
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+b1) ...
Setting up libmsgpackc2:armhf (1.4.2-4) ...
Setting up autopoint (0.19.8.1-1) ...
Setting up zlib1g-dev:armhf (1:1.2.8.dfsg-2+b1) ...
Setting up libfile-stripnondeterminism-perl (0.028-1) ...
Setting up libpcre3-dev:armhf (2:8.39-2) ...
Setting up libzmq5:armhf (4.1.5-2) ...
Setting up libmecab-dev (0.996-1.3) ...
Setting up gettext (0.19.8.1-1) ...
Setting up libssl-dev:armhf (1.0.2j-1) ...
Setting up libevent-pthreads-2.0-5:armhf (2.0.21-stable-2+b1) ...
Setting up libevent-extra-2.0-5:armhf (2.0.21-stable-2+b1) ...
Setting up libmsgpack-dev (1.4.2-4) ...
Setting up libzmq3-dev:armhf (4.1.5-2) ...
Setting up autoconf (2.69-10) ...
Setting up file (1:5.29-1) ...
Setting up intltool-debian (0.35.0+20060710.4) ...
Setting up libevent-openssl-2.0-5:armhf (2.0.21-stable-2+b1) ...
Setting up libevent-dev (2.0.21-stable-2+b1) ...
Setting up automake (1:1.15-4) ...
update-alternatives: using /usr/bin/automake-1.15 to provide /usr/bin/automake (automake) in auto mode
Setting up man-db (2.7.5-1) ...
Not building database; man-db/auto-update is not 'true'.
Setting up libtool (2.4.6-2) ...
Setting up po-debconf (1.0.20) ...
Setting up dh-autoreconf (12) ...
Setting up dh-strip-nondeterminism (0.028-1) ...
Setting up debhelper (10.2.2) ...
Setting up sbuild-build-depends-groonga-dummy (0.invalid.0) ...
Processing triggers for libc-bin (2.24-5+rpi1) ...

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

Kernel: Linux 4.6.0-1-armmp armhf (armv7l)
Toolchain package versions: binutils_2.27-9 dpkg-dev_1.18.10 g++-6_6.2.0-6+rpi1 gcc-6_6.2.0-6+rpi1 libc6-dev_2.24-5+rpi1 libstdc++-6-dev_6.2.0-6+rpi1 libstdc++6_6.2.0-6+rpi1 linux-libc-dev_3.18.5-1~exp1+rpi19+stretch
Package versions: adduser_3.115 apt_1.3.1 autoconf_2.69-10 automake_1:1.15-4 autopoint_0.19.8.1-1 autotools-dev_20160430.1 base-files_9.6+rpi1 base-passwd_3.5.40 bash_4.4-1 binutils_2.27-9 bsdmainutils_9.0.12 bsdutils_1:2.28.2-1 build-essential_12.2 bzip2_1.0.6-8 coreutils_8.25-2 cpio_2.11+dfsg-5 cpp_4:6.1.1-1 cpp-6_6.2.0-6+rpi1 dash_0.5.8-2.3 debconf_1.5.59 debfoster_2.7-2.1 debhelper_10.2.2 debianutils_4.8 dh-autoreconf_12 dh-strip-nondeterminism_0.028-1 diffutils_1:3.5-1 dirmngr_2.1.15-4 dmsetup_2:1.02.133-1 dpkg_1.18.10 dpkg-dev_1.18.10 e2fslibs_1.43.3-1 e2fsprogs_1.43.3-1 fakeroot_1.21-2 file_1:5.29-1 findutils_4.6.0+git+20160703-2 fuse2fs_1.43.3-1 g++_4:6.1.1-1 g++-6_6.2.0-6+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.0-6+rpi1 gcc-6-base_6.2.0-6+rpi1 gettext_0.19.8.1-1 gettext-base_0.19.8.1-1 gnupg_2.1.15-4 gnupg-agent_2.1.15-4 gnupg-l10n_2.1.15-4 gpgv_2.1.15-4 grep_2.26-1 groff-base_1.22.3-8 gzip_1.6-5 hostname_3.18 init_1.45 init-system-helpers_1.45 initscripts_2.88dsf-59.8 insserv_1.14.0-5.4 intltool-debian_0.35.0+20060710.4 klibc-utils_2.0.4-9+rpi1 kmod_22-1.1 libacl1_2.2.52-3 libapparmor1_2.10.95-5 libapt-pkg5.0_1.3.1 libarchive-zip-perl_1.59-1 libasan3_6.2.0-6+rpi1 libassuan0_2.4.3-1 libatomic1_6.2.0-6+rpi1 libattr1_1:2.4.47-2 libaudit-common_1:2.6.7-1 libaudit1_1:2.6.7-1 libblkid1_2.28.2-1 libbsd0_0.8.3-1 libbz2-1.0_1.0.6-8 libc-bin_2.24-5+rpi1 libc-dev-bin_2.24-5+rpi1 libc6_2.24-5+rpi1 libc6-dev_2.24-5+rpi1 libcap-ng0_0.7.7-3 libcap2_1:2.25-1 libcap2-bin_1:2.25-1 libcc1-0_6.2.0-6+rpi1 libcomerr2_1.43.3-1 libcroco3_0.6.11-2 libcryptsetup4_2:1.7.2-5 libdb5.3_5.3.28-12 libdbus-1-3_1.10.12-1 libdebconfclient0_0.218 libdevmapper1.02.1_2:1.02.133-1 libdpkg-perl_1.18.10 libdrm2_2.4.71-1 libevent-2.0-5_2.0.21-stable-2+b1 libevent-core-2.0-5_2.0.21-stable-2+b1 libevent-dev_2.0.21-stable-2+b1 libevent-extra-2.0-5_2.0.21-stable-2+b1 libevent-openssl-2.0-5_2.0.21-stable-2+b1 libevent-pthreads-2.0-5_2.0.21-stable-2+b1 libfakeroot_1.21-2 libfdisk1_2.28.2-1 libffi6_3.2.1-6 libfile-stripnondeterminism-perl_0.028-1 libfuse2_2.9.7-1 libgc1c2_1:7.4.2-8 libgcc-6-dev_6.2.0-6+rpi1 libgcc1_1:6.2.0-6+rpi1 libgcrypt20_1.7.3-2 libgdbm3_1.8.3-14 libglib2.0-0_2.50.1-1 libgmp10_2:6.1.1+dfsg-1 libgnutls30_3.5.5-2 libgomp1_6.2.0-6+rpi1 libgpg-error0_1.24-1 libhogweed4_3.3-1 libicu57_57.1-4 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_22-1.1 libksba8_1.3.5-2 libldap-2.4-2_2.4.42+dfsg-2+rpi1+b3 liblz4-1_0.0~r131-2 liblz4-dev_0.0~r131-2 liblzma5_5.2.2-1.2 libmagic-mgc_1:5.29-1 libmagic1_1:5.29-1 libmecab-dev_0.996-1.3 libmecab2_0.996-1.3 libmount1_2.28.2-1 libmpc3_1.0.3-1 libmpfr4_3.1.5-1 libmsgpack-dev_1.4.2-4 libmsgpackc2_1.4.2-4 libncurses5_6.0+20160917-1 libncursesw5_6.0+20160917-1 libnettle6_3.3-1 libnpth0_1.2-3 libp11-kit0_0.23.2-5 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~rc3-3 libpipeline1_1.4.1-2 libpng12-0_1.2.54-6 libprocps6_2:3.3.12-2 libreadline7_7.0-1 libsasl2-2_2.1.26.dfsg1-15 libsasl2-modules_2.1.26.dfsg1-15 libsasl2-modules-db_2.1.26.dfsg1-15 libseccomp2_2.3.1-2 libselinux1_2.5-3 libsemanage-common_2.5-1 libsemanage1_2.5-1 libsepol1_2.5-1 libsigsegv2_2.10-5 libsmartcols1_2.28.2-1 libsodium18_1.0.11-1 libsqlite3-0_3.14.2-1 libss2_1.43.3-1 libssl-dev_1.0.2j-1 libssl1.0.2_1.0.2j-1 libstdc++-6-dev_6.2.0-6+rpi1 libstdc++6_6.2.0-6+rpi1 libstemmer-dev_0+svn585-1 libstemmer0d_0+svn585-1 libsystemd0_231-9 libtasn1-6_4.9-4 libtimedate-perl_2.3000-2 libtinfo5_6.0+20160917-1 libtool_2.4.6-2 libubsan0_6.2.0-6+rpi1 libudev1_231-9 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-5 libuuid1_2.28.2-1 libxml2_2.9.4+dfsg1-2.1 libzmq3-dev_4.1.5-2 libzmq5_4.1.5-2 linux-libc-dev_3.18.5-1~exp1+rpi19+stretch login_1:4.2-3.2 lsb-base_9.20160629+rpi1 m4_1.4.17-5 make_4.1-9 makedev_2.3.1-93 man-db_2.7.5-1 manpages_4.08-1 mawk_1.3.3-17 mount_2.28.2-1 multiarch-support_2.24-5+rpi1 nano_2.7.0-1 ncurses-base_6.0+20160917-1 ncurses-bin_6.0+20160917-1 passwd_1:4.2-3.2 patch_2.7.5-1 perl_5.24.1~rc3-3 perl-base_5.24.1~rc3-3 perl-modules-5.24_5.24.1~rc3-3 pinentry-curses_0.9.7-6 pkg-config_0.29-4 po-debconf_1.0.20 procps_2:3.3.12-2 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_231-9 systemd-sysv_231-9 sysv-rc_2.88dsf-59.8 sysvinit-utils_2.88dsf-59.8 tar_1.29b-1 tzdata_2016h-1 udev_231-9 util-linux_2.28.2-1 xz-utils_5.2.2-1.2 zlib1g_1:1.2.8.dfsg-2+b1 zlib1g-dev_1:1.2.8.dfsg-2+b1

+------------------------------------------------------------------------------+
| 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 Oct 31 10:37:34 2016 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.0-2.dsc
dpkg-source: info: extracting groonga in /<<PKGBUILDDIR>>
dpkg-source: info: unpacking groonga_6.1.0.orig.tar.gz
dpkg-source: info: unpacking groonga_6.1.0-2.debian.tar.xz
dpkg-source: info: applying fix-nginx-FTBFS-on-kfreebsd.patch

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

Sufficient free space for build

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

APT_CONFIG=/var/lib/sbuild/apt.conf
DEB_BUILD_OPTIONS=parallel=4
HOME=/sbuild-nonexistent
LC_ALL=POSIX
LOGNAME=root
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games
SCHROOT_ALIAS_NAME=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-1a4c55a3-8978-4b1b-9286-f99eb1ec668d
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.0-2
dpkg-buildpackage: info: source distribution unstable
 dpkg-source --before-build groonga-6.1.0
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 -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 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/table/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security' 'LDFLAGS=-fPIE -pie -Wl,-z,relro -Wl,-z,now' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2' 'CXXFLAGS=-g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security' --cache-file=/dev/null --srcdir=.
checking for gcc... gcc
checking whether the C compiler works... yes
checking for C compiler default output file name... a.out
checking for suffix of executables... 
checking whether we are cross compiling... no
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking whether make sets $(MAKE)... yes
checking for main in -lm... yes
checking for main in -lcrypto... yes
checking how to run the C preprocessor... gcc -E
checking for grep that handles long lines and -e... /bin/grep
checking for egrep... /bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking for string.h... (cached) yes
checking for unistd.h... (cached) yes
checking for an ANSI C-conforming const... yes
checking whether lstat correctly handles trailing slash... yes
checking whether stat accepts an empty string... no
checking for memset... yes
checking for putenv... yes
checking for strtol... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating config
make[2]: Entering directory '/<<PKGBUILDDIR>>/vendor/ngx_mruby-source'
make[2]: Leaving directory '/<<PKGBUILDDIR>>/vendor/ngx_mruby-source'
checking for OS
 + Linux 4.6.0-1-armmp armv7l
checking for C compiler ... found
 + using GNU C compiler
checking for --with-ld-opt="-fPIE -pie -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security' 'LDFLAGS=-fPIE -pie -Wl,-z,relro -Wl,-z,now' 'CPPFLAGS=-Wdate-time -D_FORTIFY_SOURCE=2' 'CXXFLAGS=-g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security' --cache-file=/dev/null --srcdir=.
./configure --enable-multithread --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 whether the shell understands some XSI constructs... yes
checking whether the shell understands "+="... yes
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 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 ANSI C header files... (cached) yes
checking for stdlib.h... (cached) yes
checking for string.h... (cached) yes
checking for strings.h... (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 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 for prototypes... yes
checking for variable length prototypes and stdarg.h... yes
checking pthread.h usability... yes
checking pthread.h presence... yes
checking for pthread.h... yes
checking for pthread_mutex_init in -lpthread... yes
checking that generated files are newer than configure... done
configure: creating ./config.status
config.status: creating Makefile
config.status: creating onig-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.0 configuration:
-----------------------
  Compiler:              gcc
  CFLAGS:                -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings  
  CXXFLAGS:              -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -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.0!
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
   dh_auto_build -a
	make -j4
make[1]: Entering directory '/<<PKGBUILDDIR>>'
make  all-recursive
make[2]: Entering directory '/<<PKGBUILDDIR>>'
Making all in build
make[3]: Entering directory '/<<PKGBUILDDIR>>/build'
Making all in cmake_modules
make[4]: Entering directory '/<<PKGBUILDDIR>>/build/cmake_modules'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/build/cmake_modules'
make[4]: Entering directory '/<<PKGBUILDDIR>>/build'
make[4]: Nothing to be done for 'all-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/build'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/build'
Making all in include
make[3]: Entering directory '/<<PKGBUILDDIR>>/include'
Making all in groonga
make[4]: Entering directory '/<<PKGBUILDDIR>>/include/groonga'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/include/groonga'
make[4]: Entering directory '/<<PKGBUILDDIR>>/include'
make[4]: Nothing to be done for 'all-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/include'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/include'
Making all in vendor
make[3]: Entering directory '/<<PKGBUILDDIR>>/vendor'
Making all in lz4
make[4]: Entering directory '/<<PKGBUILDDIR>>/vendor/lz4'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/vendor/lz4'
Making all in onigmo
make[4]: Entering directory '/<<PKGBUILDDIR>>/vendor/onigmo'
cd ../onigmo-source && make all
make[5]: Entering directory '/<<PKGBUILDDIR>>/vendor/onigmo-source'
make  all-recursive
make[6]: Entering directory '/<<PKGBUILDDIR>>/vendor/onigmo-source'
Making all in .
make[7]: Entering directory '/<<PKGBUILDDIR>>/vendor/onigmo-source'
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT regext.lo -MD -MP -MF .deps/regext.Tpo -c regext.c  -fPIC -DPIC -o regext.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
regparse.c: In function 'name_find':
regparse.c:503: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_buf':
regint.h:706:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GET_CODE_POINT(code,p)   code = *((OnigCodePoint* )(p))
                                           ^
regparse.c:1787:5: note: in expansion of macro 'GET_CODE_POINT'
     GET_CODE_POINT(n, bbuf->p);
     ^~~~~~~~~~~~~~
regparse.c:1789: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:1871: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:1937: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:2020:11: warning: cast increases required alignment of target type [-Wcast-align]
   data1 = (OnigCodePoint* )(bbuf1->p);
           ^
regparse.c:2021: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  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
libtool: compile:  gcc -DHAVE_CONFIG_H -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT regexec.lo -MD -MP -MF .deps/regexec.Tpo -c regexec.c  -fPIC -DPIC -o regexec.o
In file included from regparse.h:33:0,
                 from regcomp.c:31:
regcomp.c: In function 'onig_is_in_code_range':
regint.h:706:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GET_CODE_POINT(code,p)   code = *((OnigCodePoint* )(p))
                                           ^
regcomp.c:6076:3: note: in expansion of macro 'GET_CODE_POINT'
   GET_CODE_POINT(n, p);
   ^~~~~~~~~~~~~~
regcomp.c:6077:10: warning: cast increases required alignment of target type [-Wcast-align]
   data = (OnigCodePoint* )p;
          ^
In file included from regparse.h:33:0,
                 from regparse.c:31:
regparse.c: In function 'is_onechar_cclass':
regint.h:706:43: warning: cast increases required alignment of target type [-Wcast-align]
 #define GET_CODE_POINT(code,p)   code = *((OnigCodePoint* )(p))
                                           ^
regparse.c:5811:5: note: in expansion of macro 'GET_CODE_POINT'
     GET_CODE_POINT(n, bbuf->p);
     ^~~~~~~~~~~~~~
regparse.c:5812:12: warning: cast increases required alignment of target type [-Wcast-align]
     data = (OnigCodePoint* )(bbuf->p) + 1;
            ^
mv -f .deps/regerror.Tpo .deps/regerror.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
regexec.c: In function 'match_at':
regexec.c:485:18: warning: cast increases required alignment of target type [-Wcast-align]
     stk_alloc  = (OnigStackType* )(alloc_addr + sizeof(OnigStackIndex) * (ptr_num));\
                  ^
regexec.c:1559:3: note: in expansion of macro 'STACK_INIT'
   STACK_INIT(alloca_base, xmalloc_base, n, INIT_MATCH_STACK_SIZE);
   ^~~~~~~~~~
regexec.c:1562:16: warning: cast increases required alignment of target type [-Wcast-align]
   repeat_stk = (OnigStackIndex* )alloca_base;
                ^
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT reggnu.lo -MD -MP -MF .deps/reggnu.Tpo -c reggnu.c  -fPIC -DPIC -o reggnu.o
mv -f .deps/reggnu.Tpo .deps/reggnu.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
st.c: In function 'onig_st_init_table_with_size':
st.c:161:17: warning: cast increases required alignment of target type [-Wcast-align]
     tbl->bins = (st_table_entry **)Calloc(size, sizeof(st_table_entry*));
                 ^
st.c: In function 'rehash':
st.c:322:16: warning: cast increases required alignment of target type [-Wcast-align]
     new_bins = (st_table_entry**)Calloc(new_num_bins, sizeof(st_table_entry*));
                ^
st.c: In function 'onig_st_copy':
st.c:353:23: warning: cast increases required alignment of target type [-Wcast-align]
     new_table->bins = (st_table_entry**)
                       ^
mv -f .deps/st.Tpo .deps/st.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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:155: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  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT regposerr.lo -MD -MP -MF .deps/regposerr.Tpo -c -o regposerr.lo regposerr.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
mv -f .deps/unicode.Tpo .deps/unicode.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT utf8.lo -MD -MP -MF .deps/utf8.Tpo -c -o utf8.lo `test -f './enc/utf8.c' || echo './'`./enc/utf8.c
libtool: compile:  gcc -DHAVE_CONFIG_H -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT utf8.lo -MD -MP -MF .deps/utf8.Tpo -c ./enc/utf8.c  -fPIC -DPIC -o utf8.o
mv -f .deps/regcomp.Tpo .deps/regcomp.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT utf16_be.lo -MD -MP -MF .deps/utf16_be.Tpo -c -o utf16_be.lo `test -f './enc/utf16_be.c' || echo './'`./enc/utf16_be.c
mv -f .deps/utf8.Tpo .deps/utf8.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT utf16_le.lo -MD -MP -MF .deps/utf16_le.Tpo -c -o utf16_le.lo `test -f './enc/utf16_le.c' || echo './'`./enc/utf16_le.c
libtool: compile:  gcc -DHAVE_CONFIG_H -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT utf16_be.lo -MD -MP -MF .deps/utf16_be.Tpo -c ./enc/utf16_be.c  -fPIC -DPIC -o utf16_be.o
libtool: compile:  gcc -DHAVE_CONFIG_H -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT utf16_le.lo -MD -MP -MF .deps/utf16_le.Tpo -c ./enc/utf16_le.c  -fPIC -DPIC -o utf16_le.o
mv -f .deps/utf16_be.Tpo .deps/utf16_be.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT utf32_be.lo -MD -MP -MF .deps/utf32_be.Tpo -c -o utf32_be.lo `test -f './enc/utf32_be.c' || echo './'`./enc/utf32_be.c
mv -f .deps/utf16_le.Tpo .deps/utf16_le.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT utf32_le.lo -MD -MP -MF .deps/utf32_le.Tpo -c -o utf32_le.lo `test -f './enc/utf32_le.c' || echo './'`./enc/utf32_le.c
libtool: compile:  gcc -DHAVE_CONFIG_H -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT utf32_be.lo -MD -MP -MF .deps/utf32_be.Tpo -c ./enc/utf32_be.c  -fPIC -DPIC -o utf32_be.o
libtool: compile:  gcc -DHAVE_CONFIG_H -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT utf32_le.lo -MD -MP -MF .deps/utf32_le.Tpo -c ./enc/utf32_le.c  -fPIC -DPIC -o utf32_le.o
mv -f .deps/utf32_be.Tpo .deps/utf32_be.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
mv -f .deps/utf32_le.Tpo .deps/utf32_le.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT sjis.lo -MD -MP -MF .deps/sjis.Tpo -c -o sjis.lo `test -f './enc/sjis.c' || echo './'`./enc/sjis.c
libtool: compile:  gcc -DHAVE_CONFIG_H -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT sjis.lo -MD -MP -MF .deps/sjis.Tpo -c ./enc/sjis.c  -fPIC -DPIC -o sjis.o
mv -f .deps/regparse.Tpo .deps/regparse.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT cp932.lo -MD -MP -MF .deps/cp932.Tpo -c -o cp932.lo `test -f './enc/cp932.c' || echo './'`./enc/cp932.c
libtool: compile:  gcc -DHAVE_CONFIG_H -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT cp932.lo -MD -MP -MF .deps/cp932.Tpo -c ./enc/cp932.c  -fPIC -DPIC -o cp932.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  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso8859_1.lo -MD -MP -MF .deps/iso8859_1.Tpo -c -o iso8859_1.lo `test -f './enc/iso8859_1.c' || echo './'`./enc/iso8859_1.c
libtool: compile:  gcc -DHAVE_CONFIG_H -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso8859_1.lo -MD -MP -MF .deps/iso8859_1.Tpo -c ./enc/iso8859_1.c  -fPIC -DPIC -o iso8859_1.o
mv -f .deps/sjis.Tpo .deps/sjis.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso8859_2.lo -MD -MP -MF .deps/iso8859_2.Tpo -c -o iso8859_2.lo `test -f './enc/iso8859_2.c' || echo './'`./enc/iso8859_2.c
libtool: compile:  gcc -DHAVE_CONFIG_H -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso8859_2.lo -MD -MP -MF .deps/iso8859_2.Tpo -c ./enc/iso8859_2.c  -fPIC -DPIC -o iso8859_2.o
mv -f .deps/iso8859_1.Tpo .deps/iso8859_1.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso8859_3.lo -MD -MP -MF .deps/iso8859_3.Tpo -c -o iso8859_3.lo `test -f './enc/iso8859_3.c' || echo './'`./enc/iso8859_3.c
libtool: compile:  gcc -DHAVE_CONFIG_H -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso8859_3.lo -MD -MP -MF .deps/iso8859_3.Tpo -c ./enc/iso8859_3.c  -fPIC -DPIC -o iso8859_3.o
mv -f .deps/iso8859_2.Tpo .deps/iso8859_2.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso8859_4.lo -MD -MP -MF .deps/iso8859_4.Tpo -c -o iso8859_4.lo `test -f './enc/iso8859_4.c' || echo './'`./enc/iso8859_4.c
mv -f .deps/cp932.Tpo .deps/cp932.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso8859_5.lo -MD -MP -MF .deps/iso8859_5.Tpo -c -o iso8859_5.lo `test -f './enc/iso8859_5.c' || echo './'`./enc/iso8859_5.c
libtool: compile:  gcc -DHAVE_CONFIG_H -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso8859_4.lo -MD -MP -MF .deps/iso8859_4.Tpo -c ./enc/iso8859_4.c  -fPIC -DPIC -o iso8859_4.o
mv -f .deps/iso8859_3.Tpo .deps/iso8859_3.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso8859_6.lo -MD -MP -MF .deps/iso8859_6.Tpo -c -o iso8859_6.lo `test -f './enc/iso8859_6.c' || echo './'`./enc/iso8859_6.c
libtool: compile:  gcc -DHAVE_CONFIG_H -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso8859_5.lo -MD -MP -MF .deps/iso8859_5.Tpo -c ./enc/iso8859_5.c  -fPIC -DPIC -o iso8859_5.o
libtool: compile:  gcc -DHAVE_CONFIG_H -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso8859_6.lo -MD -MP -MF .deps/iso8859_6.Tpo -c ./enc/iso8859_6.c  -fPIC -DPIC -o iso8859_6.o
mv -f .deps/iso8859_4.Tpo .deps/iso8859_4.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso8859_7.lo -MD -MP -MF .deps/iso8859_7.Tpo -c -o iso8859_7.lo `test -f './enc/iso8859_7.c' || echo './'`./enc/iso8859_7.c
mv -f .deps/iso8859_5.Tpo .deps/iso8859_5.Plo
mv -f .deps/iso8859_6.Tpo .deps/iso8859_6.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso8859_8.lo -MD -MP -MF .deps/iso8859_8.Tpo -c -o iso8859_8.lo `test -f './enc/iso8859_8.c' || echo './'`./enc/iso8859_8.c
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso8859_9.lo -MD -MP -MF .deps/iso8859_9.Tpo -c -o iso8859_9.lo `test -f './enc/iso8859_9.c' || echo './'`./enc/iso8859_9.c
libtool: compile:  gcc -DHAVE_CONFIG_H -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso8859_7.lo -MD -MP -MF .deps/iso8859_7.Tpo -c ./enc/iso8859_7.c  -fPIC -DPIC -o iso8859_7.o
libtool: compile:  gcc -DHAVE_CONFIG_H -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso8859_8.lo -MD -MP -MF .deps/iso8859_8.Tpo -c ./enc/iso8859_8.c  -fPIC -DPIC -o iso8859_8.o
libtool: compile:  gcc -DHAVE_CONFIG_H -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso8859_9.lo -MD -MP -MF .deps/iso8859_9.Tpo -c ./enc/iso8859_9.c  -fPIC -DPIC -o iso8859_9.o
mv -f .deps/iso8859_8.Tpo .deps/iso8859_8.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso8859_10.lo -MD -MP -MF .deps/iso8859_10.Tpo -c -o iso8859_10.lo `test -f './enc/iso8859_10.c' || echo './'`./enc/iso8859_10.c
mv -f .deps/iso8859_7.Tpo .deps/iso8859_7.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso8859_11.lo -MD -MP -MF .deps/iso8859_11.Tpo -c -o iso8859_11.lo `test -f './enc/iso8859_11.c' || echo './'`./enc/iso8859_11.c
mv -f .deps/iso8859_9.Tpo .deps/iso8859_9.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso8859_13.lo -MD -MP -MF .deps/iso8859_13.Tpo -c -o iso8859_13.lo `test -f './enc/iso8859_13.c' || echo './'`./enc/iso8859_13.c
libtool: compile:  gcc -DHAVE_CONFIG_H -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso8859_10.lo -MD -MP -MF .deps/iso8859_10.Tpo -c ./enc/iso8859_10.c  -fPIC -DPIC -o iso8859_10.o
libtool: compile:  gcc -DHAVE_CONFIG_H -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso8859_11.lo -MD -MP -MF .deps/iso8859_11.Tpo -c ./enc/iso8859_11.c  -fPIC -DPIC -o iso8859_11.o
libtool: compile:  gcc -DHAVE_CONFIG_H -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso8859_13.lo -MD -MP -MF .deps/iso8859_13.Tpo -c ./enc/iso8859_13.c  -fPIC -DPIC -o iso8859_13.o
mv -f .deps/iso8859_10.Tpo .deps/iso8859_10.Plo
mv -f .deps/iso8859_11.Tpo .deps/iso8859_11.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso8859_14.lo -MD -MP -MF .deps/iso8859_14.Tpo -c -o iso8859_14.lo `test -f './enc/iso8859_14.c' || echo './'`./enc/iso8859_14.c
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso8859_15.lo -MD -MP -MF .deps/iso8859_15.Tpo -c -o iso8859_15.lo `test -f './enc/iso8859_15.c' || echo './'`./enc/iso8859_15.c
mv -f .deps/iso8859_13.Tpo .deps/iso8859_13.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT iso8859_16.lo -MD -MP -MF .deps/iso8859_16.Tpo -c -o iso8859_16.lo `test -f './enc/iso8859_16.c' || echo './'`./enc/iso8859_16.c
libtool: compile:  gcc -DHAVE_CONFIG_H -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso8859_14.lo -MD -MP -MF .deps/iso8859_14.Tpo -c ./enc/iso8859_14.c  -fPIC -DPIC -o iso8859_14.o
libtool: compile:  gcc -DHAVE_CONFIG_H -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso8859_15.lo -MD -MP -MF .deps/iso8859_15.Tpo -c ./enc/iso8859_15.c  -fPIC -DPIC -o iso8859_15.o
libtool: compile:  gcc -DHAVE_CONFIG_H -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT iso8859_16.lo -MD -MP -MF .deps/iso8859_16.Tpo -c ./enc/iso8859_16.c  -fPIC -DPIC -o iso8859_16.o
mv -f .deps/iso8859_14.Tpo .deps/iso8859_14.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT euc_tw.lo -MD -MP -MF .deps/euc_tw.Tpo -c -o euc_tw.lo `test -f './enc/euc_tw.c' || echo './'`./enc/euc_tw.c
mv -f .deps/iso8859_15.Tpo .deps/iso8859_15.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT euc_kr.lo -MD -MP -MF .deps/euc_kr.Tpo -c -o euc_kr.lo `test -f './enc/euc_kr.c' || echo './'`./enc/euc_kr.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
mv -f .deps/iso8859_16.Tpo .deps/iso8859_16.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
libtool: compile:  gcc -DHAVE_CONFIG_H -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 -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 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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/regexec.Tpo .deps/regexec.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
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  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT koi8_r.lo -MD -MP -MF .deps/koi8_r.Tpo -c -o koi8_r.lo `test -f './enc/koi8_r.c' || echo './'`./enc/koi8_r.c
mv -f .deps/euc_kr.Tpo .deps/euc_kr.Plo
/bin/bash ./libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT cp1251.lo -MD -MP -MF .deps/cp1251.Tpo -c -o cp1251.lo `test -f './enc/cp1251.c' || echo './'`./enc/cp1251.c
libtool: compile:  gcc -DHAVE_CONFIG_H -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 -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
libtool: compile:  gcc -DHAVE_CONFIG_H -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 -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 -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -MT cp1251.lo -MD -MP -MF .deps/cp1251.Tpo -c ./enc/cp1251.c  -fPIC -DPIC -o cp1251.o
mv -f .deps/big5.Tpo .deps/big5.Plo
sed -e 's,[@]datadir[@],/usr/share,g' -e 's,[@]datarootdir[@],/usr/share,g' -e 's,[@]PACKAGE_VERSION[@],5.15.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' < ./oniguruma.pc.in > oniguruma.pc
mv -f .deps/koi8_r.Tpo .deps/koi8_r.Plo
mv -f .deps/cp1251.Tpo .deps/cp1251.Plo
mv -f .deps/gb18030.Tpo .deps/gb18030.Plo
/bin/bash ./libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -version-info 5:3:0 -no-undefined -fPIE -pie -Wl,-z,relro -Wl,-z,now -o libonig.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 utf8.lo utf16_be.lo utf16_le.lo utf32_be.lo utf32_le.lo euc_jp.lo sjis.lo cp932.lo iso8859_1.lo iso8859_2.lo iso8859_3.lo iso8859_4.lo iso8859_5.lo iso8859_6.lo iso8859_7.lo iso8859_8.lo iso8859_9.lo iso8859_10.lo iso8859_11.lo iso8859_13.lo iso8859_14.lo iso8859_15.lo iso8859_16.lo euc_tw.lo euc_kr.lo big5.lo gb18030.lo koi8_r.lo cp1251.lo  -lpthread 
libtool: link: ar cru .libs/libonig.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 utf8.o utf16_be.o utf16_le.o utf32_be.o utf32_le.o euc_jp.o sjis.o cp932.o iso8859_1.o iso8859_2.o iso8859_3.o iso8859_4.o iso8859_5.o iso8859_6.o iso8859_7.o iso8859_8.o iso8859_9.o iso8859_10.o iso8859_11.o iso8859_13.o iso8859_14.o iso8859_15.o iso8859_16.o euc_tw.o euc_kr.o big5.o gb18030.o koi8_r.o cp1251.o
ar: `u' modifier ignored since `D' is the default (see `U')
libtool: link: ranlib .libs/libonig.a
libtool: link: ( cd ".libs" && rm -f "libonig.la" && ln -s "../libonig.la" "libonig.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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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", " AbC");
     ^~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:128:12: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "aBc", " AbC");
            ^~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:131: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:131:21: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     " [a-c\337z] ", "  SS  ");
                     ^~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:133: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:133: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:136: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:136: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:138:5: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "SS          ", "          \337          ");
     ^~~~~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:138:21: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "SS          ", "          \337          ");
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:141: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:141:18: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "\\A\\S\\z", "ss");
                  ^~~~
names.c: In function 'name_callback':
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);
                           ^
names.c:20:7: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     s = (ref == gn ? "*" : "");
       ^
listcap.c:23:31: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'OnigPosition {aka int}' [-Wformat=]
   fprintf(stderr, "%d: (%ld-%ld)\n", group, beg, end);
                               ^
encode.c: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:144: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:144:14: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "[ac]+", "bbbaAaCCC");
              ^~~~~~~~~~~
listcap.c: In function 'ex':
listcap.c:60: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:60: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:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:147: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:147: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:149: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:149: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:151: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:151: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:153: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:153: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:155: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:155: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:173:53: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   r |= exec(ONIG_ENCODING_KOI8_R, ONIG_OPTION_NONE, "a+", "bbbaaaccc");
                                                     ^~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:173:59: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   r |= exec(ONIG_ENCODING_KOI8_R, ONIG_OPTION_NONE, "a+", "bbbaaaccc");
                                                           ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:174:53: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   r |= exec(ONIG_ENCODING_EUC_TW, ONIG_OPTION_NONE, "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:174:64: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   r |= exec(ONIG_ENCODING_EUC_TW, ONIG_OPTION_NONE, "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:175:53: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   r |= exec(ONIG_ENCODING_EUC_KR, ONIG_OPTION_NONE, "a+", "bbbaaaccc");
                                                     ^~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:175:59: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   r |= exec(ONIG_ENCODING_EUC_KR, ONIG_OPTION_NONE, "a+", "bbbaaaccc");
                                                           ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:176:53: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   r |= exec(ONIG_ENCODING_EUC_CN, ONIG_OPTION_NONE, "c+", "bbbaaaccc");
                                                     ^~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:176:59: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   r |= exec(ONIG_ENCODING_EUC_CN, ONIG_OPTION_NONE, "c+", "bbbaaaccc");
                                                           ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:177:53: warning: passing argument 3 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   r |= exec(ONIG_ENCODING_BIG5,   ONIG_OPTION_NONE, "a+", "bbbaaaccc");
                                                     ^~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:177:59: warning: passing argument 4 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
   r |= exec(ONIG_ENCODING_BIG5,   ONIG_OPTION_NONE, "a+", "bbbaaaccc");
                                                           ^~~~~~~~~~~
encode.c:45:1: note: expected 'char *' but argument is of type 'const char *'
 exec(OnigEncoding enc, OnigOptionType options,
 ^~~~
encode.c:180: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:180: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:182: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:182: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:184: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:184: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:186: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:186: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:188: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:188: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:191: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:192: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:195: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:196: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:200: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:201: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:205: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:205: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:209: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:209: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:213: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:213: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:217: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:217: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:221: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:221: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:224: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:225: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:230: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:231: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:234: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:234: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:238: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:239: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:243: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:243: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:247: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:247: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:251: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:252: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:256: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:257: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:261: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:262:5: warning: passing argument 5 of 'exec_deluxe' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "\000S\000t\000s\000S\000\000");
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
encode.c:84:1: note: expected 'char *' but argument is of type 'const char *'
 exec_deluxe(OnigEncoding pattern_enc, OnigEncoding str_enc,
 ^~~~~~~~~~~
mv -f .deps/names.Tpo .deps/names.Po
gcc -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
gcc -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -MT syntax.o -MD -MP -MF .deps/syntax.Tpo -c -o syntax.o syntax.c
simple.c: In function 'main':
simple.c:39:31: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'OnigPosition {aka int}' [-Wformat=]
       fprintf(stderr, "%d: (%ld-%ld)\n", i, region->beg[i], region->end[i]);
                               ^
simple.c:39:35: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'OnigPosition {aka int}' [-Wformat=]
       fprintf(stderr, "%d: (%ld-%ld)\n", i, region->beg[i], region->end[i]);
                                   ^
sql.c: In function 'main':
sql.c:56:31: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'OnigPosition {aka int}' [-Wformat=]
       fprintf(stderr, "%d: (%ld-%ld)\n", i, region->beg[i], region->end[i]);
                               ^
sql.c:56:35: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'OnigPosition {aka int}' [-Wformat=]
       fprintf(stderr, "%d: (%ld-%ld)\n", i, region->beg[i], region->end[i]);
                                   ^
syntax.c: In function 'exec':
syntax.c:39:31: warning: format '%ld' expects argument of type 'long int', but argument 4 has type 'OnigPosition {aka int}' [-Wformat=]
       fprintf(stderr, "%d: (%ld-%ld)\n", i, region->beg[i], region->end[i]);
                               ^
syntax.c:39:35: warning: format '%ld' expects argument of type 'long int', but argument 5 has type 'OnigPosition {aka int}' [-Wformat=]
       fprintf(stderr, "%d: (%ld-%ld)\n", i, region->beg[i], region->end[i]);
                                   ^
syntax.c: In function 'main':
syntax.c:65:5: warning: passing argument 2 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "\\p{XDigit}\\P{XDigit}\\p{^XDigit}\\P{^XDigit}\\p{XDigit}",
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
syntax.c:8:12: note: expected 'char *' but argument is of type 'const char *'
 extern int exec(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(OnigSyntaxType* syntax,
            ^~~~
syntax.c:69:5: warning: passing argument 2 of 'exec' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "\\p{XDigit}\\P{XDigit}[a-c&&b-g]\\u0020[\\u0021]", "bgc !");
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
syntax.c:8:12: note: expected 'char *' but argument is of type 'const char *'
 extern int exec(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(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(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(OnigSyntaxType* syntax,
            ^~~~
mv -f .deps/simple.Tpo .deps/simple.Po
gcc -DHAVE_CONFIG_H -I. -I.. -I.. -I/usr/include  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings    -fPIE -pie -Wl,-z,relro -Wl,-z,now -o listcap listcap.o ../libonig.la -lpthread 
mv -f .deps/syntax.Tpo .deps/syntax.Po
/bin/bash ../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings    -fPIE -pie -Wl,-z,relro -Wl,-z,now -o names names.o ../libonig.la -lpthread 
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,
 ^~
mv -f .deps/encode.Tpo .deps/encode.Po
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)
 ^~
/bin/bash ../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings    -fPIE -pie -Wl,-z,relro -Wl,-z,now -o posix posix.o ../libonig.la -lpthread 
libtool: link: gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -fPIE -pie -Wl,-z -Wl,relro -Wl,-z -Wl,now -o listcap listcap.o  ../.libs/libonig.a -lpthread
libtool: link: gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -fPIE -pie -Wl,-z -Wl,relro -Wl,-z -Wl,now -o names names.o  ../.libs/libonig.a -lpthread
libtool: link: gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -fPIE -pie -Wl,-z -Wl,relro -Wl,-z -Wl,now -o posix posix.o  ../.libs/libonig.a -lpthread
/bin/bash ../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings    -fPIE -pie -Wl,-z,relro -Wl,-z,now -o simple simple.o ../libonig.la -lpthread 
/bin/bash ../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings    -fPIE -pie -Wl,-z,relro -Wl,-z,now -o sql sql.o ../libonig.la -lpthread 
mv -f .deps/crnl.Tpo .deps/crnl.Po
/bin/bash ../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings    -fPIE -pie -Wl,-z,relro -Wl,-z,now -o syntax syntax.o ../libonig.la -lpthread 
/bin/bash ../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings    -fPIE -pie -Wl,-z,relro -Wl,-z,now -o encode encode.o ../libonig.la -lpthread 
libtool: link: gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -fPIE -pie -Wl,-z -Wl,relro -Wl,-z -Wl,now -o simple simple.o  ../.libs/libonig.a -lpthread
libtool: link: gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -fPIE -pie -Wl,-z -Wl,relro -Wl,-z -Wl,now -o sql sql.o  ../.libs/libonig.a -lpthread
libtool: link: gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -fPIE -pie -Wl,-z -Wl,relro -Wl,-z -Wl,now -o syntax syntax.o  ../.libs/libonig.a -lpthread
libtool: link: gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -fPIE -pie -Wl,-z -Wl,relro -Wl,-z -Wl,now -o encode encode.o  ../.libs/libonig.a -lpthread
/bin/bash ../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings    -fPIE -pie -Wl,-z,relro -Wl,-z,now -o crnl crnl.o ../libonig.la -lpthread 
libtool: link: gcc -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -fPIE -pie -Wl,-z -Wl,relro -Wl,-z -Wl,now -o crnl crnl.o  ../.libs/libonig.a -lpthread
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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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 -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 -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 -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 -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 -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
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 -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 -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
../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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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 -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
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 -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 -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
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)
 ^~~~~~~~~~~~
/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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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 -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 -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 -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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
/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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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 -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
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 -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 -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
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 -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 -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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
/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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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 -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 -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 -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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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 -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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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 -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
../mruby-source/src/gc.c: In function 'add_heap':
../mruby-source/src/gc.c:194:21: warning: cast increases required alignment of target type [-Wcast-align]
 #define objects(p) ((RVALUE *)p->objects)
                     ^
../mruby-source/src/gc.c:328:12: note: in expansion of macro 'objects'
   for (p = objects(page), e=p+MRB_HEAP_PAGE_SIZE; p<e; p++) {
            ^~~~~~~
../mruby-source/src/gc.c:328:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   for (p = objects(page), e=p+MRB_HEAP_PAGE_SIZE; p<e; p++) {
   ^~~
../mruby-source/src/gc.c: In function 'free_heap':
../mruby-source/src/gc.c:194:21: warning: cast increases required alignment of target type [-Wcast-align]
 #define objects(p) ((RVALUE *)p->objects)
                     ^
../mruby-source/src/gc.c:382:14: note: in expansion of macro 'objects'
     for (p = objects(tmp), e=p+MRB_HEAP_PAGE_SIZE; p<e; p++) {
              ^~~~~~~
../mruby-source/src/gc.c:382:5: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
     for (p = objects(tmp), e=p+MRB_HEAP_PAGE_SIZE; p<e; p++) {
     ^~~
../mruby-source/src/gc.c: In function 'mrb_obj_alloc':
../mruby-source/src/gc.c:500:4: warning: cast increases required alignment of target type [-Wcast-align]
   *(RVALUE *)p = RVALUE_zero;
    ^
../mruby-source/src/gc.c: In function 'gc_mark_children':
../mruby-source/src/gc.c:638:26: warning: cast increases required alignment of target type [-Wcast-align]
       struct RArray *a = (struct RArray*)obj;
                          ^
../mruby-source/src/gc.c: In function 'obj_free':
../mruby-source/src/gc.c:751:28: warning: cast increases required alignment of target type [-Wcast-align]
       mrb_ary_decref(mrb, ((struct RArray*)obj)->aux.shared);
                            ^
../mruby-source/src/gc.c:753:22: warning: cast increases required alignment of target type [-Wcast-align]
       mrb_free(mrb, ((struct RArray*)obj)->ptr);
                      ^
../mruby-source/src/gc.c:762:26: warning: cast increases required alignment of target type [-Wcast-align]
     mrb_gc_free_str(mrb, (struct RString*)obj);
                          ^
../mruby-source/src/gc.c: In function 'gc_gray_mark':
../mruby-source/src/gc.c:889:26: warning: cast increases required alignment of target type [-Wcast-align]
       struct RArray *a = (struct RArray*)obj;
                          ^
../mruby-source/src/gc.c: In function 'incremental_sweep_phase':
../mruby-source/src/gc.c:194:21: warning: cast increases required alignment of target type [-Wcast-align]
 #define objects(p) ((RVALUE *)p->objects)
                     ^
../mruby-source/src/gc.c:961:17: note: in expansion of macro 'objects'
     RVALUE *p = objects(page);
                 ^~~~~~~
../mruby-source/src/gc.c:961:5: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
     RVALUE *p = objects(page);
     ^~~~~~
../mruby-source/src/gc.c: In function 'gc_each_objects':
../mruby-source/src/gc.c:194:21: warning: cast increases required alignment of target type [-Wcast-align]
 #define objects(p) ((RVALUE *)p->objects)
                     ^
../mruby-source/src/gc.c:1430:9: note: in expansion of macro 'objects'
     p = objects(page);
         ^~~~~~~
../mruby-source/src/gc.c:1430:5: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
     p = objects(page);
     ^
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -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 -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
/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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
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)
 ^~~~~~~~~~~~
/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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
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 -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 -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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/kernel.c  -fPIC -DPIC -o ../mruby-source/src/.libs/kernel.o
In file included from ./../mruby-source/include/mruby/proc.h:73:0,
                 from ../mruby-source/src/kernel.c:10:
../mruby-source/src/kernel.c: In function 'kh_alloc_st':
./../mruby-source/include/mruby/khash.h:104:15: warning: cast increases required alignment of target type [-Wcast-align]
     h->keys = (khkey_t *)p;                                             \
               ^
../mruby-source/src/kernel.c:636:1: note: in expansion of macro 'KHASH_DEFINE'
 KHASH_DEFINE(st, mrb_sym, char, FALSE, kh_int_hash_func, kh_int_hash_equal)
 ^~~~~~~~~~~~
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/load.c  -fPIC -DPIC -o ../mruby-source/src/.libs/load.o
../mruby-source/src/load.c: In function 'read_irep_record_1':
../mruby-source/src/load.c:81:20: warning: cast increases required alignment of target type [-Wcast-align]
       irep->iseq = (mrb_code*)src;
                    ^
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
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 -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 -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
/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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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 -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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/pool.lo ../mruby-source/src/pool.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/print.lo ../mruby-source/src/print.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -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 -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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/proc.lo ../mruby-source/src/proc.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/print.c  -fPIC -DPIC -o ../mruby-source/src/.libs/print.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/range.lo ../mruby-source/src/range.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/state.lo ../mruby-source/src/state.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -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 -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
/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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
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 -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/range.c  -fPIC -DPIC -o ../mruby-source/src/.libs/range.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -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 -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
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 -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 -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
../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':
/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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
../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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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 -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
/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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
In file included from ../mruby-source/src/symbol.c:10:0:
../mruby-source/src/symbol.c: In function 'kh_alloc_n2s':
./../mruby-source/include/mruby/khash.h:104:15: warning: cast increases required alignment of target type [-Wcast-align]
     h->keys = (khkey_t *)p;                                             \
               ^
../mruby-source/src/symbol.c:36:1: note: in expansion of macro 'KHASH_DEFINE'
 KHASH_DEFINE (n2s, mrb_sym, mrb_sym, FALSE, sym_hash_func, sym_hash_equal)
 ^~~~~~~~~~~~
./../mruby-source/include/mruby/khash.h:105:27: warning: cast increases required alignment of target type [-Wcast-align]
     h->vals = kh_is_map ? (khval_t *)(p+sizeof(khkey_t)*sz) : NULL;     \
                           ^
../mruby-source/src/symbol.c:36:1: note: in expansion of macro 'KHASH_DEFINE'
 KHASH_DEFINE (n2s, mrb_sym, mrb_sym, FALSE, sym_hash_func, sym_hash_equal)
 ^~~~~~~~~~~~
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -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 -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 -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 -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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/src/vm.lo ../mruby-source/src/vm.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/src/vm.c  -fPIC -DPIC -o ../mruby-source/src/.libs/vm.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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 -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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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 -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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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 -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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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 -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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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 -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
/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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
../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)
                                                           ^~
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 -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 -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
../mruby-source/mrbgems/mruby-time/src/time.c: In function 'mrb_time_to_i':
../mruby-source/mrbgems/mruby-time/src/time.c:704:15: warning: comparison is always false due to limited range of data type [-Wtype-limits]
   if (tm->sec > MRB_INT_MAX || tm->sec < MRB_INT_MIN) {
               ^
../mruby-source/mrbgems/mruby-time/src/time.c:704:40: warning: comparison is always false due to limited range of data type [-Wtype-limits]
   if (tm->sec > MRB_INT_MAX || tm->sec < MRB_INT_MIN) {
                                        ^
../mruby-source/mrbgems/mruby-time/src/time.c: In function 'mrb_time_usec':
../mruby-source/mrbgems/mruby-time/src/time.c:718:16: warning: comparison is always false due to limited range of data type [-Wtype-limits]
   if (tm->usec > MRB_INT_MAX || tm->usec < MRB_INT_MIN) {
                ^
../mruby-source/mrbgems/mruby-time/src/time.c:718:42: warning: comparison is always false due to limited range of data type [-Wtype-limits]
   if (tm->usec > MRB_INT_MAX || tm->usec < MRB_INT_MIN) {
                                          ^
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
/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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
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 -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 -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
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 -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 -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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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 -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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
/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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-hash-ext/src/hash-ext.lo ../mruby-source/mrbgems/mruby-hash-ext/src/hash-ext.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o ../mruby-source/mrbgems/mruby-range-ext/src/range.lo ../mruby-source/mrbgems/mruby-range-ext/src/range.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -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 -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 -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 -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
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 -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 -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
/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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
/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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
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 -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 -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 -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 -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
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 -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 -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
/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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
/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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
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 -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 -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 -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 -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
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 -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 -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
/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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
/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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
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 -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 -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
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 -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c ../mruby-source/mrbgems/mruby-fiber/src/fiber.c  -fPIC -DPIC -o ../mruby-source/mrbgems/mruby-fiber/src/.libs/fiber.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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 -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
/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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
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 -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 -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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast -c -o mruby-env/src/env.lo mruby-env/src/env.c
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y: In function 'new_int':
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:725:33: warning: cast increases required alignment of target type [-Wcast-align]
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:158:40: note: in definition of macro 'list3'
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y: In function 'new_float':
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:732:34: warning: cast increases required alignment of target type [-Wcast-align]
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:137:35: note: in definition of macro 'cons'
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y: In function 'new_str':
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:739:37: warning: cast increases required alignment of target type [-Wcast-align]
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:137:35: note: in definition of macro 'cons'
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:739:32: note: in expansion of macro 'cons'
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y: In function 'new_xstr':
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:753:38: warning: cast increases required alignment of target type [-Wcast-align]
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:137:35: note: in definition of macro 'cons'
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:753:33: note: in expansion of macro 'cons'
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y: In function 'new_regx':
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:774:38: warning: cast increases required alignment of target type [-Wcast-align]
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:137:35: note: in definition of macro 'cons'
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:774:33: note: in expansion of macro 'cons'
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:774:54: warning: cast increases required alignment of target type [-Wcast-align]
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:137:35: note: in definition of macro 'cons'
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:774:33: note: in expansion of macro 'cons'
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:774:49: note: in expansion of macro 'cons'
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:774:65: warning: cast increases required alignment of target type [-Wcast-align]
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:137:35: note: in definition of macro 'cons'
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:774:33: note: in expansion of macro 'cons'
/home/kenhys/work/groonga/groonga.clean/vendor/mruby-source/mrbgems/mruby-compiler/core/parse.y:774:49: note: in expansion of macro 'cons'
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c mruby-onig-regexp/src/mruby_onig_regexp.c  -fPIC -DPIC -o mruby-onig-regexp/src/.libs/mruby_onig_regexp.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c mruby-env/src/env.c  -fPIC -DPIC -o mruby-env/src/.libs/env.o
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'onig_regexp_match':
mruby-onig-regexp/src/mruby_onig_regexp.c:188: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:210: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:211: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:227: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:234: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:295: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:320:3: warning: dereferencing type-punned pointer might break strict-aliasing rules [-Wstrict-aliasing]
   Data_Get_Struct(mrb, self, &mrb_onig_regexp_type, reg);
   ^~~~~~~~~~~~~~~
mruby-onig-regexp/src/mruby_onig_regexp.c: In function 'match_data_begin':
mruby-onig-regexp/src/mruby_onig_regexp.c:454: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:473: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:486: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:503: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:513: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:526: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:535: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:561: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:581: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:656: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:695: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:754: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:819: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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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 -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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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 -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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c mruby-io/src/io.c  -fPIC -DPIC -o mruby-io/src/.libs/io.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include -I./../onigmo-source -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -Wno-float-equal -Wno-bad-function-cast -c mruby-io/src/mruby_io_gem.c  -fPIC -DPIC -o mruby-io/src/.libs/mruby_io_gem.o
mruby-io/src/io.c: In function 'mrb_io_sysseek':
mruby-io/src/io.c:653:11: warning: comparison is always false due to limited range of data type [-Wtype-limits]
   if (pos > MRB_INT_MAX) {
           ^
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I./../mruby-source/include -I./../mruby-source/src -I./../mruby-source/mrbgems/mruby-compiler/core -Imruby-io/include -I./mruby-io/include  -I./../onigmo-source -DMRB_INT64  -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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 -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wno-float-equal -Wno-bad-function-cast  -fPIE -pie -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>>=. -fPIE -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>>=. -fPIE -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>>=. -fPIE -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>>=. -fPIE -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.cpp  -fPIC -DPIC -o .libs/file.o
libtool: compile:  g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I../.. -I../../include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -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 cursor-factory.cpp  -fPIC -DPIC -o .libs/cursor-factory.o
libtool: compile:  g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I../.. -I../../include -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wcast-align -Wwrite-strings -fexceptions -fimplicit-templates -c file-impl.cpp  -fPIC -DPIC -o .libs/file-impl.o
/bin/bash ../../libtool  --tag=CXX   --mode=compile g++ -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I../.. -I../../include   -Wdate-time -D_FORTIFY_SOURCE=2  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -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>>=. -fPIE -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>>=. -fPIE -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>>=. -fPIE -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>>=. -fPIE -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  -fPIE -pie -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_array.c  -fPIC -DPIC -o .libs/mrb_array.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_bulk.c  -fPIC -DPIC -o .libs/mrb_bulk.o
In file included from ../../include/groonga.h:22:0,
                 from ../grn.h:761,
                 from ../grn_ctx.h:21,
                 from ../grn_ctx_impl.h:22,
                 from mrb_bulk.c:19:
mrb_bulk.c: In function 'grn_mrb_value_from_bulk':
../../include/groonga/groonga.h:1430: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:1431: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:1432: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:1433: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:1434: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:1435: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:1436: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1437: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:1438: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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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 -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 -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_converter.lo mrb_converter.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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 -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 -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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 -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_error.lo mrb_error.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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
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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_eval_context.c  -fPIC -DPIC -o .libs/mrb_eval_context.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_fixed_size_column.lo mrb_fixed_size_column.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_hash_table.lo mrb_hash_table.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_fixed_size_column.c  -fPIC -DPIC -o .libs/mrb_fixed_size_column.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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
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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_index_column.c  -fPIC -DPIC -o .libs/mrb_index_column.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_index_cursor.c  -fPIC -DPIC -o .libs/mrb_index_cursor.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_logger.lo mrb_logger.c
mrb_indexable.c: In function 'indexable_index_ids':
mrb_indexable.c:146:14: warning: cast increases required alignment of target type [-Wcast-align]
       data = (grn_obj_default_set_value_hook_data *)GRN_TEXT_VALUE(&hook_data);
              ^
/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_object.lo mrb_object.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
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:1457: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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_object.c  -fPIC -DPIC -o .libs/mrb_object.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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
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 -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 -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_pointer.lo mrb_pointer.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_patricia_trie.c  -fPIC -DPIC -o .libs/mrb_patricia_trie.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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
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:1439:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
mrb_pointer.c:57:42: note: in expansion of macro 'GRN_PTR_VALUE'
   return grn_mrb_value_from_grn_obj(mrb, GRN_PTR_VALUE(pointer));
                                          ^~~~~~~~~~~~~
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_query_logger.c  -fPIC -DPIC -o .libs/mrb_query_logger.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_table_group_flags.lo mrb_table_group_flags.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_table_group_result.lo mrb_table_group_result.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_table_group_result.c  -fPIC -DPIC -o .libs/mrb_table_group_result.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_table_sort_flags.c  -fPIC -DPIC -o .libs/mrb_table_sort_flags.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o mrb_thread.lo mrb_thread.c
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c mrb_thread.c  -fPIC -DPIC -o .libs/mrb_thread.o
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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
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 -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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 -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:39: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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings    -fPIE -pie -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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 -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 -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 -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:1438: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:1433: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:1433: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:1433: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:1433: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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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:1458: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:1458: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:1458: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:1458: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 -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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 -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o proc_query.lo proc_query.c
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -I. -I../..  -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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
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 -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
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 -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
/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
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:1457: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:1457: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:1457: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:1458: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:1458: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:1457: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:779: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:1457: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:944:21: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
         source_id = GRN_RECORD_VALUE_AT(&source_ids, i);
                     ^~~~~~~~~~~~~~~~~~~
proc_schema.c: In function 'command_schema_output_tables':
../../include/groonga/groonga.h:1457: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:1177:16: note: in expansion of macro 'GRN_RECORD_VALUE_AT'
     table_id = GRN_RECORD_VALUE_AT(&table_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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
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 -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:39: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:1432: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:1432: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,
         ^
In file included from ../../include/groonga.h:22:0,
                 from ../grn.h:761,
                 from ../grn_proc.h:21,
                 from proc_snippet.c:19:
proc_snippet.c: In function 'func_snippet':
../../include/groonga/groonga.h:1433: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:1433: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_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);
         ^
proc_snippet.c: In function 'func_snippet_html':
../../include/groonga/groonga.h:1439: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);
                   ^~~~~~~~~~~~~
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:1439: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);
                ^~~~~~~~~~~~~
../../include/groonga/groonga.h:1457: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);
          ^~~~~~~~~~~~~~~~~~~
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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c proc_highlight.c  -fPIC -DPIC -o .libs/proc_highlight.o
proc_highlight.c: In function 'highlight_keyword_sets':
proc_highlight.c:196:22: warning: cast increases required alignment of target type [-Wcast-align]
                      (const char **)GRN_BULK_HEAD(&open_tags),
                      ^
proc_highlight.c:197:22: warning: cast increases required alignment of target type [-Wcast-align]
                      (unsigned int *)GRN_BULK_HEAD(&open_tag_lengths),
                      ^
proc_highlight.c:198:22: warning: cast increases required alignment of target type [-Wcast-align]
                      (const char **)GRN_BULK_HEAD(&close_tags),
                      ^
proc_highlight.c:199:22: warning: cast increases required alignment of target type [-Wcast-align]
                      (unsigned int *)GRN_BULK_HEAD(&close_tag_lengths),
                      ^
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:1439: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:1458: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:1439: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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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:1458: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 -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:1433: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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings    -fPIE -pie -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c ts_expr.c  -fPIC -DPIC -o .libs/ts_expr.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I../.. -I../../include -I../../vendor/mruby-source/include -I../../vendor/onigmo-source -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c ts_buf.c  -fPIC -DPIC -o .libs/ts_buf.o
In file included from ../../include/groonga.h:22:0,
                 from ../grn.h:761,
                 from ts_expr_builder.h:21,
                 from ts_expr_builder.c:19:
ts_expr_builder.c: In function 'grn_ts_expr_builder_push_bulk':
../../include/groonga/groonga.h:1430: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:1432: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:1434: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:1431: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:1433: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:1435: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:1436: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1437: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:1441: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:1449: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:1451: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:1450: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:1452: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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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 -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 -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
/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o ts_plan.lo ts_plan.c
ts_expr_parser.c: In function 'grn_ts_expr_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)
         ^
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 -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings    -fPIE -pie -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c cache.c  -fPIC -DPIC -o .libs/cache.o
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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
/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o command.lo command.c
cache.c: In function 'grn_cache_open':
cache.c:63:17: warning: cast increases required alignment of target type [-Wcast-align]
   cache->next = (grn_cache_entry *)cache;
                 ^
cache.c:64:17: warning: cast increases required alignment of target type [-Wcast-align]
   cache->prev = (grn_cache_entry *)cache;
                 ^
cache.c: In function 'grn_cache_fetch':
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: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;
                          ^
com.c: In function 'grn_msg_open':
com.c:131:21: warning: cast increases required alignment of target type [-Wcast-align]
   if (old && (msg = (grn_msg *)grn_com_queue_deque(ctx, old))) {
                     ^
com.c: In function 'grn_msg_open_for_reply':
com.c:152:18: warning: cast increases required alignment of target type [-Wcast-align]
   grn_msg *req = (grn_msg *)query, *msg = NULL;
                  ^
com.c:153:21: warning: cast increases required alignment of target type [-Wcast-align]
   if (req && (msg = (grn_msg *)grn_msg_open(ctx, req->u.peer, old))) {
                     ^
com.c: In function 'grn_msg_close':
com.c:164:18: warning: cast increases required alignment of target type [-Wcast-align]
   grn_msg *msg = (grn_msg *)obj;
                  ^
com.c: In function 'grn_msg_set_property':
com.c:173:30: warning: cast increases required alignment of target type [-Wcast-align]
   grn_com_header *header = &((grn_msg *)obj)->header;
                              ^
com.c: In function 'grn_msg_send':
com.c:184:16: warning: cast increases required alignment of target type [-Wcast-align]
   grn_msg *m = (grn_msg *)msg;
                ^
com.c: In function 'grn_com_receiver':
com.c:529:20: warning: cast increases required alignment of target type [-Wcast-align]
     grn_msg *msg = (grn_msg *)grn_msg_open(ctx, com, &ev->recv_old);
                    ^
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing     -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c command.c  -fPIC -DPIC -o .libs/command.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing     -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o ctx.lo ctx.c
command.c: In function 'grn_command_input_at':
command.c:125:16: warning: cast increases required alignment of target type [-Wcast-align]
     argument = (grn_obj *)grn_hash_get_value_(ctx, input->arguments,
                ^
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c config.c  -fPIC -DPIC -o .libs/config.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing     -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c ctx.c  -fPIC -DPIC -o .libs/ctx.o
ctx.c: In function 'grn_ctx_loader_clear':
ctx.c:168:16: warning: cast increases required alignment of target type [-Wcast-align]
   grn_obj *v = (grn_obj *)(GRN_BULK_HEAD(&loader->values));
                ^
ctx.c:169:17: warning: cast increases required alignment of target type [-Wcast-align]
   grn_obj *ve = (grn_obj *)(GRN_BULK_CURR(&loader->values));
                 ^
ctx.c:170: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:426: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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
ctx.c:878:10: note: in expansion of macro 'GRN_INT32_VALUE'
     ct = GRN_INT32_VALUE(var);
          ^~~~~~~~~~~~~~~
ctx.c: In function 'grn_ctx_use':
ctx.c:1503:26: warning: cast increases required alignment of target type [-Wcast-align]
         ctx->encoding = *(grn_encoding *)GRN_BULK_HEAD(&buf);
                          ^
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 -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
/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>>=. -fPIE -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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
/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o dump.lo dump.c
In file included from grn_db.h:24:0,
                 from grn_config.h:21,
                 from db.c:19:
db.c: In function 'calc_rec_size':
grn_rset.h:55:4: warning: cast increases required alignment of target type [-Wcast-align]
   ((double *)((byte *)subrecs + n * GRN_RSET_SUBREC_SIZE(size)))
    ^
db.c: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:1433: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:1452: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:1458: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:1457: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:1458: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:1452: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:34:0,
                 from grn.h:761,
                 from db.c:18:
../include/groonga/groonga.h:1457: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:1458: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:1438: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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6127:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6194:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();
     ^~~~~~~~~~
db.c: In function 'grn_obj_cast_record':
../include/groonga/groonga.h:1438: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:1344:26: note: in definition of macro 'GRN_RECORD_SET'
   grn_id _val = (grn_id)(val);\
                          ^~~
db.c:6304:31: note: in expansion of macro 'GRN_RECORD_VALUE'
     GRN_RECORD_SET(ctx, dest, GRN_RECORD_VALUE(src));
                               ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6329:7: note: in expansion of macro 'GRN_RECORD_VALUE'
   if (GRN_RECORD_VALUE(src) == GRN_ID_NIL) {
       ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1438: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:1344:26: note: in definition of macro 'GRN_RECORD_SET'
   grn_id _val = (grn_id)(val);\
                          ^~~
db.c:6330:31: note: in expansion of macro 'GRN_RECORD_VALUE'
     GRN_RECORD_SET(ctx, dest, GRN_RECORD_VALUE(src));
                               ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6334: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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6127:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6245:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6354:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT8_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6127:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6245:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6357:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT8_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1430: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:1303:40: note: in definition of macro 'GRN_BOOL_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6203:5: note: in expansion of macro 'NUM2BOOL'
     tobool(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6203:23: note: in expansion of macro 'GRN_INT16_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6360:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1430: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:1307:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6206:29: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6360:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1430: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:1311:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6209:30: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6360:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1430: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:1315:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6212:30: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6360:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1430: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:1319:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6215:31: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6360:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1430: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:1323:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6218:30: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6360:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1430: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:1327:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6221:31: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6360:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1430: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:1331:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6224:5: note: in expansion of macro 'NUM2TIME'
     totime(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6224:23: note: in expansion of macro 'GRN_INT16_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6360:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1430: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:1331:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6227:30: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6360:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1430: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:1335:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6230:31: note: in expansion of macro 'GRN_INT16_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6360:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1430: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:1339:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6233:5: note: in expansion of macro 'NUM2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6233:24: note: in expansion of macro 'GRN_INT16_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6360:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6238:23: note: in expansion of macro 'GRN_INT16_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6360:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6127:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6245:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6360:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT16_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1431: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:1303:40: note: in definition of macro 'GRN_BOOL_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6203:5: note: in expansion of macro 'NUM2BOOL'
     tobool(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6203:23: note: in expansion of macro 'GRN_UINT16_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6363:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1431: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:1307:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6206:29: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6363:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1431: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:1311:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6209:30: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6363:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1431: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:1315:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6212:30: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6363:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1431: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:1319:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6215:31: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6363:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1431: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:1323:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6218:30: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6363:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1431: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:1327:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6221:31: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6363:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1431: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:1331:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6224:5: note: in expansion of macro 'NUM2TIME'
     totime(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6224:23: note: in expansion of macro 'GRN_UINT16_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6363:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1431: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:1331:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6227:30: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6363:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1431: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:1335:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6230:31: note: in expansion of macro 'GRN_UINT16_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6363:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1431: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:1339:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6233:5: note: in expansion of macro 'NUM2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6233:24: note: in expansion of macro 'GRN_UINT16_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6363:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6238:23: note: in expansion of macro 'GRN_UINT16_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6363:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6127:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6245:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6363:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT16_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1432: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:1303:40: note: in definition of macro 'GRN_BOOL_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6203:5: note: in expansion of macro 'NUM2BOOL'
     tobool(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6203:23: note: in expansion of macro 'GRN_INT32_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6366:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1432: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:1307:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6206:29: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6366:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1432: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:1311:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6209:30: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6366:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1432: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:1315:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6212:30: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6366:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1432: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:1319:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6215:31: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6366:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1432: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:1323:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6218:30: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6366:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1432: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:1327:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6221:31: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6366:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1432: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:1331:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6224:5: note: in expansion of macro 'NUM2TIME'
     totime(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6224:23: note: in expansion of macro 'GRN_INT32_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6366:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1432: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:1331:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6227:30: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6366:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1432: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:1335:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6230:31: note: in expansion of macro 'GRN_INT32_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6366:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1432: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:1339:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6233:5: note: in expansion of macro 'NUM2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6233:24: note: in expansion of macro 'GRN_INT32_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6366:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6238:23: note: in expansion of macro 'GRN_INT32_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6366:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6127:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6245:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6366:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT32_VALUE, grn_text_itoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1433: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:1303:40: note: in definition of macro 'GRN_BOOL_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6203:5: note: in expansion of macro 'NUM2BOOL'
     tobool(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6203:23: note: in expansion of macro 'GRN_UINT32_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6369:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1433: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:1307:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6206:29: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6369:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1433: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:1311:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6209:30: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6369:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1433: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:1315:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6212:30: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6369:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1433: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:1319:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6215:31: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6369:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1433: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:1323:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6218:30: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6369:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1433: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:1327:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6221:31: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6369:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1433: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:1331:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6224:5: note: in expansion of macro 'NUM2TIME'
     totime(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6224:23: note: in expansion of macro 'GRN_UINT32_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6369:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1433: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:1331:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6227:30: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6369:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1433: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:1335:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6230:31: note: in expansion of macro 'GRN_UINT32_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6369:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1433: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:1339:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6233:5: note: in expansion of macro 'NUM2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6233:24: note: in expansion of macro 'GRN_UINT32_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6369:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6238:23: note: in expansion of macro 'GRN_UINT32_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6369:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6127:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6245:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6369:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT32_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1303:40: note: in definition of macro 'GRN_BOOL_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6203:5: note: in expansion of macro 'NUM2BOOL'
     tobool(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6203:23: note: in expansion of macro 'GRN_INT64_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6372:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1307:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6206:29: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6372:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1311:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6209:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6372:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1315:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6212:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6372:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1319:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6215:31: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6372:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1323:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6218:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6372:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1327:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6221:31: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6372:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1331:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6224:5: note: in expansion of macro 'NUM2TIME'
     totime(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6224:23: note: in expansion of macro 'GRN_INT64_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6372:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1331:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6227:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6372:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1335:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6230:31: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6372:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1339:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6233:5: note: in expansion of macro 'NUM2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6233:24: note: in expansion of macro 'GRN_INT64_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6372:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1434: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:6238:23: note: in expansion of macro 'GRN_INT64_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6372:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6127:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6245:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6372:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_INT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1303:40: note: in definition of macro 'GRN_BOOL_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6203:5: note: in expansion of macro 'NUM2BOOL'
     tobool(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6203:23: note: in expansion of macro 'GRN_INT64_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6375:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6375:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1307:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6206:29: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6375:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6375:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1311:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6209:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6375:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6375:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1315:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6212:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6375:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6375:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1319:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6215:31: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6375:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6375:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1323:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6218:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6375:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6375:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1327:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6221:31: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6375:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6375:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1331:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6224:5: note: in expansion of macro 'TIME2TIME'
     totime(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6224:23: note: in expansion of macro 'GRN_INT64_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6375:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6375:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1331:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6227:30: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6375:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6375:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1335:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6230:31: note: in expansion of macro 'GRN_INT64_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6375:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6375:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1339:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6233:5: note: in expansion of macro 'TIME2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6233:24: note: in expansion of macro 'GRN_INT64_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6375:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6375:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1434: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:6238:23: note: in expansion of macro 'GRN_INT64_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6375:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
db.c:6375:14: note: in expansion of macro 'GRN_TIME_VALUE'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
              ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6127:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6245:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6375:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_TIME_VALUE, grn_text_lltoa, NUM2BOOL, TIME2TIME, TIME2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1435: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:1303:40: note: in definition of macro 'GRN_BOOL_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6203:5: note: in expansion of macro 'NUM2BOOL'
     tobool(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6203:23: note: in expansion of macro 'GRN_UINT64_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6378:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1435: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:1307:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6206:29: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6378:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1435: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:1311:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6209:30: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6378:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1435: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:1315:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6212:30: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6378:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1435: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:1319:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6215:31: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6378:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1435: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:1323:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6218:30: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6378:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1435: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:1327:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6221:31: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6378:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1435: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:1331:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6224:5: note: in expansion of macro 'NUM2TIME'
     totime(ctx, dest, getvalue(src));\
     ^~~~~~
db.c:6224:23: note: in expansion of macro 'GRN_UINT64_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6378:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1435: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:1331:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6227:30: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6378:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1435: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:1335:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6230:31: note: in expansion of macro 'GRN_UINT64_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6378:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1435: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:1339:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6233:5: note: in expansion of macro 'NUM2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6233:24: note: in expansion of macro 'GRN_UINT64_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6378:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1435: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:6238:23: note: in expansion of macro 'GRN_UINT64_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6378:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6127:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6245:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6378:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_UINT64_VALUE, grn_text_lltoa, NUM2BOOL, NUM2TIME, NUM2FLOAT);
     ^~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6271:19: note: in definition of macro 'FLOAT2BOOL'
   double value_ = value;\
                   ^~~~~
db.c:6203:23: note: in expansion of macro 'GRN_FLOAT_VALUE'
     tobool(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6381: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:1436: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:1307:36: note: in definition of macro 'GRN_INT8_SET'
   signed char _val = (signed char)(val);\
                                    ^~~
db.c:6206:29: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_INT8_SET(ctx, dest, getvalue(src));\
                             ^~~~~~~~
db.c:6381:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1436: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:1311:40: note: in definition of macro 'GRN_UINT8_SET'
   unsigned char _val = (unsigned char)(val);\
                                        ^~~
db.c:6209:30: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_UINT8_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6381:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1436: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:1315:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
db.c:6212:30: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_INT16_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6381:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1436: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:1319:42: note: in definition of macro 'GRN_UINT16_SET'
   unsigned short _val = (unsigned short)(val);\
                                          ^~~
db.c:6215:31: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_UINT16_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6381:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1436: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:1323:20: note: in definition of macro 'GRN_INT32_SET'
   int _val = (int)(val);\
                    ^~~
db.c:6218:30: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_INT32_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6381:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1436: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:1327:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:6221:31: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_UINT32_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6381:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6280:26: note: in definition of macro 'FLOAT2TIME'
   int64_t usec = llround(value * GRN_TIME_USEC_PER_SEC);\
                          ^~~~~
db.c:6224:23: note: in expansion of macro 'GRN_FLOAT_VALUE'
     totime(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6381: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:1436: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:1331:40: note: in definition of macro 'GRN_INT64_SET'
   long long int _val = (long long int)(val);\
                                        ^~~
db.c:6227:30: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_INT64_SET(ctx, dest, getvalue(src));\
                              ^~~~~~~~
db.c:6381:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1436: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:1335:58: note: in definition of macro 'GRN_UINT64_SET'
   long long unsigned int _val = (long long unsigned int)(val);\
                                                          ^~~
db.c:6230:31: note: in expansion of macro 'GRN_FLOAT_VALUE'
     GRN_UINT64_SET(ctx, dest, getvalue(src));\
                               ^~~~~~~~
db.c:6381:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1436: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:1339:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
db.c:6233:5: note: in expansion of macro 'FLOAT2FLOAT'
     tofloat(ctx, dest, getvalue(src));\
     ^~~~~~~
db.c:6233:24: note: in expansion of macro 'GRN_FLOAT_VALUE'
     tofloat(ctx, dest, getvalue(src));\
                        ^~~~~~~~
db.c:6381:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6238:23: note: in expansion of macro 'GRN_FLOAT_VALUE'
     totext(ctx, dest, getvalue(src));\
                       ^~~~~~~~
db.c:6381:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6127:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6245:5: note: in expansion of macro 'SRC2RECORD'
     SRC2RECORD();\
     ^~~~~~~~~~
db.c:6381:5: note: in expansion of macro 'NUM2DEST'
     NUM2DEST(GRN_FLOAT_VALUE, grn_text_ftoa, FLOAT2BOOL, FLOAT2TIME,
     ^~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:6127:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&record_id);\
              ^~~~~~~~~~~~~~~~
db.c:6531:7: note: in expansion of macro 'SRC2RECORD'
       SRC2RECORD();
       ^~~~~~~~~~
../include/groonga/groonga.h:1441:25: warning: cast increases required alignment of target type [-Wcast-align]
   grn_geo_point *_val = (grn_geo_point *)GRN_BULK_HEAD(obj);\
                         ^
db.c:6542: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:6640:33: warning: cast increases required alignment of target type [-Wcast-align]
         value = (const char *)&((grn_rset_recinfo *)value)->score;
                                 ^
db.c:6646:33: warning: cast increases required alignment of target type [-Wcast-align]
         value = (const char *)&((grn_rset_recinfo *)value)->n_subrecs;
                                 ^
db.c:6654:51: warning: cast increases required alignment of target type [-Wcast-align]
                                                   (grn_rset_recinfo *)value,
                                                   ^
db.c:6663:51: warning: cast increases required alignment of target type [-Wcast-align]
                                                   (grn_rset_recinfo *)value,
                                                   ^
db.c:6672:51: warning: cast increases required alignment of target type [-Wcast-align]
                                                   (grn_rset_recinfo *)value,
                                                   ^
db.c:6681:51: warning: cast increases required alignment of target type [-Wcast-align]
                                                   (grn_rset_recinfo *)value,
                                                   ^
db.c:6701: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:6763: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:6772: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:6781: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:6792: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:6803: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:6814: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:6884:18: warning: cast increases required alignment of target type [-Wcast-align]
             ri = (grn_rset_recinfo *)GRN_BULK_HEAD(&buf);
                  ^
db.c:6888: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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6891:29: note: in expansion of macro 'GRN_FLOAT_VALUE'
                 ri->score = GRN_FLOAT_VALUE(value);
                             ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6896:29: note: in expansion of macro 'GRN_FLOAT_VALUE'
                 ri->score = GRN_FLOAT_VALUE(&buf);
                             ^~~~~~~~~~~~~~~
db.c:6906:34: warning: cast increases required alignment of target type [-Wcast-align]
           grn_rset_recinfo *ri = (grn_rset_recinfo *)GRN_BULK_HEAD(&buf);
                                  ^
db.c:6913: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:1434: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:6915: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:1434: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:6921:40: note: in expansion of macro 'GRN_INT64_VALUE'
                                        GRN_INT64_VALUE(&value_int64));
                                        ^~~~~~~~~~~~~~~
db.c:6930: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:1434: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:6932: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:1434: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:6938:40: note: in expansion of macro 'GRN_INT64_VALUE'
                                        GRN_INT64_VALUE(&value_int64));
                                        ^~~~~~~~~~~~~~~
db.c:6947: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:1434: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:6949: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:1434: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:6955:40: note: in expansion of macro 'GRN_INT64_VALUE'
                                        GRN_INT64_VALUE(&value_int64));
                                        ^~~~~~~~~~~~~~~
db.c:6964: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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6966: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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:6972: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:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:7376:21: note: in expansion of macro 'GRN_RECORD_VALUE'
         casted_id = GRN_RECORD_VALUE(&casted_record);
                     ^~~~~~~~~~~~~~~~
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
db.c: In function 'grn_token_filters_pack':
../include/groonga/groonga.h:1458: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:8320:29: note: in expansion of macro 'GRN_PTR_VALUE_AT'
     grn_obj *token_filter = GRN_PTR_VALUE_AT(token_filters, i);
                             ^~~~~~~~~~~~~~~~
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing     -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o ts.lo ts.c
db.c: In function 'grn_obj_set_info_source_validate':
db.c:8484: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:8566: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:1458: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:8670: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:9284: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:9406: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:10230: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:1458: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:10531: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:1439:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
db.c:10620: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:1439:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
db.c:10807:30: note: in expansion of macro 'GRN_PTR_VALUE'
           grn_obj_close(ctx, GRN_PTR_VALUE(obj));
                              ^~~~~~~~~~~~~
../include/groonga/groonga.h:1458: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:10817: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:11490:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11548:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int16_t);
       ^~~~~~
db.c:11491:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11548:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int16_t);
       ^~~~~~
db.c:11490:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11551:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int32_t);
       ^~~~~~
db.c:11491:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11551:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int32_t);
       ^~~~~~
db.c:11490:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11554:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int64_t);
       ^~~~~~
db.c:11491:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11554:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int64_t);
       ^~~~~~
db.c:11490:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11560:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint16_t);
       ^~~~~~
db.c:11491:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11560:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint16_t);
       ^~~~~~
db.c:11490:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11563:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint32_t);
       ^~~~~~
db.c:11491:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11563:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint32_t);
       ^~~~~~
db.c:11490:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11566:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint64_t);
       ^~~~~~
db.c:11491:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11566:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint64_t);
       ^~~~~~
db.c:11571:24: warning: cast increases required alignment of target type [-Wcast-align]
           float va = *((float *)(ap));
                        ^
db.c:11572:24: warning: cast increases required alignment of target type [-Wcast-align]
           float vb = *((float *)(bp));
                        ^
db.c:11584:25: warning: cast increases required alignment of target type [-Wcast-align]
           double va = *((double *)(ap));
                         ^
db.c:11585:25: warning: cast increases required alignment of target type [-Wcast-align]
           double vb = *((double *)(bp));
                         ^
db.c: In function 'compare_value':
db.c:11490:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11784:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int16_t);
       ^~~~~~
db.c:11491:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11784:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int16_t);
       ^~~~~~
db.c:11490:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11787:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int32_t);
       ^~~~~~
db.c:11491:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11787:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int32_t);
       ^~~~~~
db.c:11490:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11790:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int64_t);
       ^~~~~~
db.c:11491:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11790:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(int64_t);
       ^~~~~~
/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o type.lo type.c
db.c:11490:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11796:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint16_t);
       ^~~~~~
db.c:11491:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11796:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint16_t);
       ^~~~~~
db.c:11490:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11799:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint32_t);
       ^~~~~~
db.c:11491:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11799:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint32_t);
       ^~~~~~
db.c:11490:19: warning: cast increases required alignment of target type [-Wcast-align]
       type va = *((type *)(ap));\
                   ^
db.c:11802:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint64_t);
       ^~~~~~
db.c:11491:19: warning: cast increases required alignment of target type [-Wcast-align]
       type vb = *((type *)(bp));\
                   ^
db.c:11802:7: note: in expansion of macro 'CMPNUM'
       CMPNUM(uint64_t);
       ^~~~~~
db.c:11807:24: warning: cast increases required alignment of target type [-Wcast-align]
           float va = *((float *)(ap));
                        ^
db.c:11808:24: warning: cast increases required alignment of target type [-Wcast-align]
           float vb = *((float *)(bp));
                        ^
db.c:11820:25: warning: cast increases required alignment of target type [-Wcast-align]
           double va = *((double *)(ap));
                         ^
db.c:11821:25: warning: cast increases required alignment of target type [-Wcast-align]
           double vb = *((double *)(bp));
                         ^
db.c: In function 'values_add':
db.c:13508:11: warning: cast increases required alignment of target type [-Wcast-align]
     res = (grn_obj *)(GRN_TEXT_VALUE(&loader->values) + curr_size);
           ^
db.c:13513: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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:13526:14: note: in expansion of macro 'GRN_UINT32_VALUE'
     value += GRN_UINT32_VALUE(value);
              ^~~~~~~~~~~~~~~~
db.c: In function 'set_vector':
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:13560:11: note: in expansion of macro 'GRN_UINT32_VALUE'
   int n = GRN_UINT32_VALUE(vector);
           ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1438: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:1482:38: note: in definition of macro 'GRN_UINT32_PUT'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
db.c:13581: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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:13658:9: note: in expansion of macro 'GRN_UINT32_VALUE'
     n = GRN_UINT32_VALUE(index_value);
         ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:13679: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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:13734:12: note: in expansion of macro 'GRN_UINT32_VALUE'
     return GRN_UINT32_VALUE(value);
            ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
db.c:13736:12: note: in expansion of macro 'GRN_INT32_VALUE'
     return GRN_INT32_VALUE(value);
            ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
db.c:13753:14: note: in expansion of macro 'GRN_UINT32_VALUE'
         id = GRN_UINT32_VALUE(&casted_value);
              ^~~~~~~~~~~~~~~~
db.c: In function 'bracket_close':
db.c:13772: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:13774:3: note: in expansion of macro 'GRN_UINT32_POP'
   GRN_UINT32_POP(&loader->level, begin);
   ^~~~~~~~~~~~~~
db.c:13775:11: warning: cast increases required alignment of target type [-Wcast-align]
   value = (grn_obj *)GRN_TEXT_VALUE(&loader->values) + begin;
           ^
db.c:13776: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:13961:3: note: in expansion of macro 'GRN_UINT32_POP'
   GRN_UINT32_POP(&loader->level, begin);
   ^~~~~~~~~~~~~~
db.c:13962:17: warning: cast increases required alignment of target type [-Wcast-align]
   value_begin = (grn_obj *)GRN_TEXT_VALUE(&loader->values) + begin;
                 ^
db.c:13963: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:14882: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:14912: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:1458: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:14942:26: note: in expansion of macro 'GRN_PTR_VALUE_AT'
       grn_obj *element = GRN_PTR_VALUE_AT(space, i);
                          ^~~~~~~~~~~~~~~~
db.c:14953: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 -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 -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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
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 -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
/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o expr_code.lo expr_code.c
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing     -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o geo.lo geo.c
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:1432: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:1433: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1331: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:1436: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:1339: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:1439: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:1458: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:1433: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:1457: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:1438: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:1482: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:1439:31: 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:1439:31: 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:1439:31: 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:1439:31: 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:1439:31: 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:1439:31: 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:1439:31: 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:1439:31: 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:1439:31: 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:1439:31: 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:1433: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:1439:31: 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:1439:31: 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:1439:31: 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:1439:31: 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:1432: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:1433: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:1434:33: 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:1435:34: warning: 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:1439:31: 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:1439:31: 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:1439:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2692:28: note: in expansion of macro 'GRN_PTR_VALUE'
             grn_obj *col = GRN_PTR_VALUE(var);
                            ^~~~~~~~~~~~~
expr.c:2693:27: warning: cast increases required alignment of target type [-Wcast-align]
             grn_id rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));
                           ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1439: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:1439:31: 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:1439:31: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430: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:1315: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:1431: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1431: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:1319: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:1432: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1432: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:1323: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:1433: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1433: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:1327: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:1434:33: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1435: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:1335: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1331: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:1435:34: warning: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1435: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:1335: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:1436: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1436: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:1339: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:1439: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:1439:31: 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:1439:31: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2717:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430: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:1315: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:1431: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1431: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:1319: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:1432: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1432: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:1323: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:1433: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1433: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:1327: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:1434:33: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1435: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:1335: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1331: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:1435:34: warning: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1435: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:1335: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:1436: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1436: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:1339: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:1439: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:1439:31: 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:1439:31: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2731:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430: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:1315: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:1431: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1431: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:1319: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:1432: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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(
         ^
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 -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:1432: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:1323: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:1433: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1433: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:1327: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:1434:33: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1435: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:1335: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1331: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:1435:34: warning: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1435: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:1335: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:1436: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1436: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:1339: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:1439: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(
         ^
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 -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
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:1439:31: 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:1439:31: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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(
         ^
/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430: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:1315: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:1431: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1431: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:1319: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:1432: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1432: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:1323: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:1433: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2745:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1433: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:1327: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:1434:33: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1435: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:1335: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1331: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:1435:34: warning: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1435: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:1335: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:1436: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1436: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:1339: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:1439: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:1439:31: 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:1439:31: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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(
         ^
In file included from grn_geo.h:21:0,
                 from geo.c:18:
geo.c: In function 'compute_min_and_max':
grn.h:697:27: warning: cast increases required alignment of target type [-Wcast-align]
   grn_geo_point *point_ = (grn_geo_point *)keybuf;\
                           ^
geo.c:126:5: note: in expansion of macro 'grn_ntog'
     grn_ntog((uint8_t *)geo_min, geo_key_min, sizeof(grn_geo_point));
     ^~~~~~~~
grn.h:698:20: warning: cast increases required alignment of target type [-Wcast-align]
   uint64_t key_ = *(const uint64_t *)key;\
                    ^
geo.c:126:5: note: in expansion of macro 'grn_ntog'
     grn_ntog((uint8_t *)geo_min, geo_key_min, sizeof(grn_geo_point));
     ^~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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(
         ^
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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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(
         ^
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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430: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:1315: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:1431: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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(
         ^
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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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(
         ^
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:1432: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1433: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:1434: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:1435: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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436: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:1441: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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1431: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:1319: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:1432: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(
         ^
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);
                    ^~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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(
         ^
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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1432: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:1323: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:1433: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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(
         ^
In file included from grn_geo.h:21:0,
                 from geo.c:18:
geo.c: In function 'grn_geo_cursor_entry_next_push':
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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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(
         ^
geo.c: In function 'grn_geo_cursor_each':
grn.h:697:27: warning: cast increases required alignment of target type [-Wcast-align]
   grn_geo_point *point_ = (grn_geo_point *)keybuf;\
                           ^
geo.c:1847:7: note: in expansion of macro 'grn_ntog'
       grn_ntog((uint8_t*)(&entry_base), entry.key, sizeof(grn_geo_point));
       ^~~~~~~~
grn.h:698:20: warning: cast increases required alignment of target type [-Wcast-align]
   uint64_t key_ = *(const uint64_t *)key;\
                    ^
geo.c:1847:7: note: in expansion of macro 'grn_ntog'
       grn_ntog((uint8_t*)(&entry_base), entry.key, sizeof(grn_geo_point));
       ^~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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(
         ^
In file included from geo.c:18:0:
geo.c: In function 'grn_geo_in_circle':
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:2128:27: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                           GRN_GEO_POINT_VALUE_RAW(point),
                           ^~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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(
         ^
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:1432: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:1433: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:1434: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:1435: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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
geo.c:2144:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
       r = d <= GRN_FLOAT_VALUE(radius_or_point);
                ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1433: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:1327: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(
         ^
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:1434:33: 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(
         ^
geo.c: In function 'grn_geo_in_rectangle':
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:2219:34: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                  GRN_GEO_POINT_VALUE_RAW(point),
                                  ^~~~~~~~~~~~~~~~~~~~~~~
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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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(
         ^
geo.c: In function 'grn_geo_distance_rectangle':
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:2650:38: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                      GRN_GEO_POINT_VALUE_RAW(point1),
                                      ^~~~~~~~~~~~~~~~~~~~~~~
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:2651:38: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                      GRN_GEO_POINT_VALUE_RAW(point2));
                                      ^~~~~~~~~~~~~~~~~~~~~~~
geo.c: In function 'grn_geo_distance_sphere':
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:2677:37: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                     GRN_GEO_POINT_VALUE_RAW(point1),
                                     ^~~~~~~~~~~~~~~~~~~~~~~
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:2678:37: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                     GRN_GEO_POINT_VALUE_RAW(point2));
                                     ^~~~~~~~~~~~~~~~~~~~~~~
geo.c: In function 'grn_geo_distance_ellipsoid':
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:2705:48: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                                GRN_GEO_POINT_VALUE_RAW(point1),
                                                ^~~~~~~~~~~~~~~~~~~~~~~
grn_geo.h:57:38: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_GEO_POINT_VALUE_RAW(obj) (grn_geo_point *)GRN_BULK_HEAD(obj)
                                      ^
geo.c:2706:48: note: in expansion of macro 'GRN_GEO_POINT_VALUE_RAW'
                                                GRN_GEO_POINT_VALUE_RAW(point2));
                                                ^~~~~~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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(
         ^
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:1435: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:1335: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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(
         ^
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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(
         ^
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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(
         ^
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1331: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:1435:34: warning: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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(
         ^
../include/groonga/groonga.h:1435: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:1335: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:1436: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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(
         ^
../include/groonga/groonga.h:1436: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:1339: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(
         ^
../include/groonga/groonga.h:1439: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 ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1439:31: 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:1439:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1430: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1430: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:1315: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:1431: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1431: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:1319: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:1432: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1743:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT32_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2773:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1432: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:1323: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:1433: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1433: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:1327: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:1434:33: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1435: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:1335: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1331: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:1435:34: warning: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1435: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:1335: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:1436: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1436: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:1339: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:1439: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:1439:31: 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:1439:31: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430: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:1315: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:1431: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2787:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1431: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:1319: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:1432: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1432: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:1323: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:1433: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1433: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:1327: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:1434:33: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1435: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:1335: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1331: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:1435:34: warning: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1435: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:1335: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:1436: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1436: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:1339: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:1439: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:1439:31: 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:1439:31: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430: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:1315: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:1431: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1431: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:1319: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:1432: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1432: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:1323: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:1433: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1433: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:1327: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:1434:33: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1435: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:1335: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1331: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:1435:34: warning: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1799:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT64_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1435: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:1335: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:1436: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1436: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:1339:26: note: in definition of macro 'GRN_FLOAT_SET'
   double _val = (double)(val);\
                          ^~~
expr.c:1662:19: note: in expansion of macro 'FLOAT_ARITHMETIC_OPERATION_SHIFTRR'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_FLOAT_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1813:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_FLOAT_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2801:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1439:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:2353:20: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *col = GRN_PTR_VALUE(var);                                  \
                    ^~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
expr.c:2354:19: warning: cast increases required alignment of target type [-Wcast-align]
     grn_id rid = *(grn_id *)(GRN_BULK_HEAD(var) + sizeof(grn_obj *));   \
                   ^
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1439:31: 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:1439:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
grn_db.h:302:9: note: in expansion of macro 'GRN_PTR_VALUE'
       ? GRN_PTR_VALUE(obj)\
         ^~~~~~~~~~~~~
expr.c:2358:13: note: in expansion of macro 'GRN_OBJ_RESOLVE'
     value = GRN_OBJ_RESOLVE(ctx, value);                                \
             ^~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1687:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT8_SET,               \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1713:12: note: in expansion of macro 'GRN_INT16_VALUE'
       x_ = GRN_INT16_VALUE(x);                                          \
            ^~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
expr.c:1622:12: note: in expansion of macro 'GRN_TIME_VALUE'
       y_ = GRN_TIME_VALUE(y);                                           \
            ^~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1646:12: note: in expansion of macro 'GRN_FLOAT_VALUE'
       y_ = GRN_FLOAT_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1430: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:1315:38: note: in definition of macro 'GRN_INT16_SET'
   signed short _val = (signed short)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_INT16_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1727:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       x_ = GRN_UINT16_VALUE(x);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1590:12: note: in expansion of macro 'GRN_INT16_VALUE'
       y_ = GRN_INT16_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1598:12: note: in expansion of macro 'GRN_UINT16_VALUE'
       y_ = GRN_UINT16_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1606:12: note: in expansion of macro 'GRN_INT32_VALUE'
       y_ = GRN_INT32_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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(
         ^
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 -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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:1630:12: note: in expansion of macro 'GRN_INT64_VALUE'
       y_ = GRN_INT64_VALUE(y);                                          \
            ^~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1638:12: note: in expansion of macro 'GRN_UINT64_VALUE'
       y_ = GRN_UINT64_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2373:5: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
     ARITHMETIC_OPERATION_DISPATCH((&variable_value), (&casted_value),   \
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:2816:9: note: in expansion of macro 'ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH'
         ARITHMETIC_OPERATION_AND_ASSIGN_DISPATCH(
         ^
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1431: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:1319: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:1432: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1432: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:1323: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:1433: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1433: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:1327: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:1434:33: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1435: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:1335: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1331: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:1435:34: warning: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1435: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:1335: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:1436: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1436: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:1339: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:1439: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:1439:31: 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:1439:31: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430: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:1315: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:1431: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1431: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:1319: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:1432: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1432: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:1323: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:1433: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1433: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:1327: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:1434:33: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1435: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:1335: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1331: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:1435:34: warning: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1435: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:1335: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:1436: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1436: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:1339: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:1439: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:1439:31: 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:1439:31: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430: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:1315: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:1431: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1431: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:1319: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:1432: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(
         ^
hash.c: In function 'grn_hash_entry_put_key':
hash.c:1669:8: warning: cast increases required alignment of target type [-Wcast-align]
       *(uint32_t *)entry->plain_entry.key = hash_value;
        ^
hash.c: In function 'get_key':
hash.c:1732:44: warning: cast increases required alignment of target type [-Wcast-align]
   return grn_hash_entry_get_key(ctx, hash, (grn_hash_entry *)n);
                                            ^
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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(
         ^
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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1432: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:1323: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:1433: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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(
         ^
hash.c: In function 'pack':
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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(
         ^
hash.c:3097:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3131:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3097:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3131:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3098:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3131:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1433: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:1327: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(
         ^
hash.c:3098:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3131:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3100:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3131:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1434:33: 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(
         ^
hash.c:3100:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3131: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]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3131:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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(
         ^
hash.c:3101:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3131:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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(
         ^
hash.c:3097:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3131:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3097:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3131:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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(
         ^
hash.c:3098:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3131: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]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3131:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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(
         ^
hash.c:3100:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3131:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
hash.c:3100:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3131: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]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3131: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]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3131:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1435: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:1335: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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(
         ^
hash.c: In function 'part':
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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(
         ^
hash.c:3097:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3166:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
hash.c:3097:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3166:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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(
         ^
hash.c:3098:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3166:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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(
         ^
hash.c:3098:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3166:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
hash.c:3100:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3166:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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(
         ^
hash.c:3100:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3166: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]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3166:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1331: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(
         ^
hash.c:3101:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3166:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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(
         ^
hash.c:3097:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3166:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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(
         ^
hash.c:3097:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3166:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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(
         ^
hash.c:3098:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3166:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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(
         ^
hash.c:3098:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3166:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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(
         ^
hash.c:3100:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3166:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
hash.c:3100:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3166:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1435: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:1335: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:1436: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(
         ^
hash.c:3101:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3166: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]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3166:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, ep, es)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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(
         ^
hash.c:3097:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3172:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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(
         ^
hash.c:3097:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3172: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]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3172:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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(
         ^
hash.c:3098:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3172:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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(
         ^
hash.c:3100:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3172:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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(
         ^
hash.c:3100:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3172:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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(
         ^
hash.c:3101:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3172: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]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3172:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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(
         ^
hash.c:3097:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3172:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
hash.c:3097:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3172: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]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3172:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
../include/groonga/groonga.h:1436: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:1339: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(
         ^
hash.c:3098:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3172:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
hash.c:3100:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3172:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
hash.c:3100:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3172:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
hash.c:3101:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3172: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]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3172:7: note: in expansion of macro 'COMPARE_VAL'
   if (COMPARE_VAL(bp, bs, cp, cs)) {
       ^~~~~~~~~~~
hash.c:3097:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3175:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1438: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:1439:31: 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);
                ^~~~~~~~~~~~~~~
hash.c:3097:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3175:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1439:31: 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:1439:31: 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:1439:31: 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);
                 ^~~~~~~~~~~~~~~
hash.c:3098:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3175:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1439:31: 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:1439:31: 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);
                   ^~~~~~~~~~~~~~~
hash.c:3098:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3175:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1439:31: 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);
                   ^~~~~~~~~~~~~~~
hash.c:3100:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3175:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1439:31: 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:1433: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);
                                        ^~~~~~~~~~~~~~~~
hash.c:3100:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3175:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1439:31: 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:1439:31: 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);
                ^~~~~~~~~~~~~~~
hash.c:3101:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3175:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1439:31: 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:1439:31: 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);
                 ^~~~~~~~~~~~~~~
hash.c:3101:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3175:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1439:31: 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:1439:31: 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:1439:31: 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);
                   ^~~~~~~~~~~~~~~
hash.c:3097:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3175:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1439:31: 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:1433: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:1439:31: 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_);
                   ^~~~~~~~~~~~~~~
hash.c:3097:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3175:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1439:31: 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_);
                   ^~~~~~~~~~~~~~~
hash.c:3098:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3175:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1439:31: 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);
                 ^~~~~~~~~~~~~~~
hash.c:3098:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3175:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1439:31: 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);
                 ^~~~~~~~~~~~~~~
hash.c:3100:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3175:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1439:31: 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);
                   ^~~~~~~~~~~~~~~
hash.c:3100:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3175:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1439:31: 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);
                   ^~~~~~~~~~~~~~~
hash.c:3101:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3175:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1439:31: 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:1439:31: 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);
                   ^~~~~~~~~~~~~~~
hash.c:3101:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3175:9: note: in expansion of macro 'COMPARE_VAL'
     if (COMPARE_VAL(cp, cs, ep, es)) {
         ^~~~~~~~~~~
../include/groonga/groonga.h:1432: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);
                                               ^~~~~~~~~~~~~~~
hash.c:3097:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3188:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
../include/groonga/groonga.h:1439:31: 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:1439:31: 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);
                 ^~~~~~~~~~~~~~~
hash.c:3097:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3188:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1439:31: 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_);
                   ^~~~~~~~~~~~~~~
hash.c:3098:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3188:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1439:31: 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_);
                   ^~~~~~~~~~~~~~~
hash.c:3098:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3188:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1439:31: 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);
                   ^~~~~~~~~~~~~~~
hash.c:3100:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3188:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1439:31: 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);
                   ^~~~~~~~~~~~~~~
hash.c:3100:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3188:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
hash.c:3101:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3188:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1439:31: 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);
                 ^~~~~~~~~~~~~~~
hash.c:3101:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3188:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1439:31: 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);
                 ^~~~~~~~~~~~~~~
hash.c:3097:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3188:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1439:31: 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:1439:31: 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);
                 ^~~~~~~~~~~~~~~
hash.c:3097:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3188:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1439:31: 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);
                   ^~~~~~~~~~~~~~~
hash.c:3098:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3188:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1439:31: 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);
                   ^~~~~~~~~~~~~~~
hash.c:3098:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3188:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
In file included from ../include/groonga.h:39: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);
           ^~~~~~~~~~~~~~~~~~
hash.c:3100:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3188:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
hash.c:3100:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3188:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
hash.c:3101:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3188: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]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3188:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(cp, cs, bp, bs));
              ^~~~~~~~~~~
hash.c:3097:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3192:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
hash.c:3097:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3192: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]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3192: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]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3192:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
hash.c:3100:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3192:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
hash.c:3100:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3192: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]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3192: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]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:3105:12: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
            ^~~~~~~~~~~~
hash.c:3192:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1432: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));
                              ^~~~~~~~~~~~~~~
hash.c:3097:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                 ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3192:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1432: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));
                              ^~~~~~~~~~~~~~~
hash.c:3097:39: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((uint64_t *)(ap)) > *((uint64_t *)(bp))\
                                       ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3192:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1432: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));
                              ^~~~~~~~~~~~~~~
hash.c:3098:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                 ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3192:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1432: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));
                              ^~~~~~~~~~~~~~~
hash.c:3098:39: warning: cast increases required alignment of target type [-Wcast-align]
             : *((uint32_t *)(ap)) > *((uint32_t *)(bp)))\
                                       ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3192:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1432: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));
                              ^~~~~~~~~~~~~~~
hash.c:3100:17: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                 ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3192:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1432: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:1432: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));
                              ^~~~~~~~~~~~~~~
hash.c:3100:38: warning: cast increases required alignment of target type [-Wcast-align]
             ? *((int64_t *)(ap)) > *((int64_t *)(bp))\
                                      ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3192:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1432: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));
                              ^~~~~~~~~~~~~~~
hash.c:3101:17: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                 ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3192:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1432: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));
                              ^~~~~~~~~~~~~~~
hash.c:3101:38: warning: cast increases required alignment of target type [-Wcast-align]
             : *((int32_t *)(ap)) > *((int32_t *)(bp))))\
                                      ^
hash.c:3105:48: note: in expansion of macro 'COMPARE_VAL_'
   ((dir) ? COMPARE_VAL_((bp),(bs),(ap),(as)) : COMPARE_VAL_((ap),(as),(bp),(bs)))
                                                ^~~~~~~~~~~~
hash.c:3192:14: note: in expansion of macro 'COMPARE_VAL'
     } while (COMPARE_VAL(ep, es, cp, cs));
              ^~~~~~~~~~~
../include/groonga/groonga.h:1432: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));
                              ^~~~~~~~~~~~~~~
hash.c: In function 'pack_val32':
hash.c:3235:10: warning: cast increases required alignment of target type [-Wcast-align]
     : (*((int32_t *)((byte *)((arg->flags & GRN_TABLE_SORT_BY_VALUE)\
          ^
hash.c:3267:3: note: in expansion of macro 'PREPARE_VAL32'
   PREPARE_VAL32(id, c, &cr);
   ^~~~~~~~~~~~~
../include/groonga/groonga.h:1432: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));
                              ^~~~~~~~~~~~~~~
hash.c:3235:10: warning: cast increases required alignment of target type [-Wcast-align]
     : (*((int32_t *)((byte *)((arg->flags & GRN_TABLE_SORT_BY_VALUE)\
          ^
hash.c:3277:5: note: in expansion of macro 'PREPARE_VAL32'
     PREPARE_VAL32(id, e, &er);
     ^~~~~~~~~~~~~
../include/groonga/groonga.h:1432: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:1432: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:1432: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:1432: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:1432: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:1432: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:1432: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:1432: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:1432: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:1432: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:1436: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:1432: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:1432: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:1432: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:1432: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:1432: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:1432: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:1432: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:1432: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:1432: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:1432: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:1432: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:1432: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:1432: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:1432: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430: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:1315: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:1431: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1431: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:1319: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:1432: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1432: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:1323: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:1433: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1433: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:1327: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:1434:33: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1435: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:1335: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1331: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:1435:34: warning: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1435: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:1335: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:1436: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1436: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:1339: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:1430: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:1431: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:1432: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:1433: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:1434:33: 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1435:34: warning: 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:1436: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:1434:33: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430: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:1315: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:1431: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1431: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:1319: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:1432: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1432: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:1323: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:1433: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1433: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:1327: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:1434:33: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1435: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:1335: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1331: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:1435:34: warning: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1435: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:1335: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:1436: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1436: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:1339: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430: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:1315: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:1431: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1431: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:1319: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:1432: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1432: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:1323: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:1433: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1433: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:1327: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:1434:33: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1435: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:1335: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1331: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:1435:34: warning: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1435: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:1335: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:1436: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1436: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:1339: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:1430: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:1431: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:1432: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:1433: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1434:33: 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:1435:34: warning: 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:1436: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:1430: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:1431: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:1432: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:1433: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1434:33: 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:1435:34: warning: 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:1436: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:1430: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:1430: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:1431: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:1432: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:1433: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1434:33: 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:1435:34: warning: 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:1436: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:1430: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:1315: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:1430: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:1315: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:1431: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:1430: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:1431: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:1432: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:1433: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1434:33: 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:1435:34: warning: 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:1436: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:1431: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:1319: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:1431: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:1319: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:1432: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:1430: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:1431: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:1432: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:1433: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1434:33: 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:1435:34: warning: 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:1436: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:1432: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:1323: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:1432: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:1323: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:1433: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:1430: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:1431: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:1432: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:1433: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1434:33: 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:1435:34: warning: 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:1436: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:1433: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:1327: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:1434:33: 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:1430: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:1431: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:1432: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:1433: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1434:33: 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:1435:34: warning: 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:1436: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1331: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1331: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1430: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:1431: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:1432: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:1433: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1434:33: 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:1435:34: warning: 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:1436: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1331: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1331: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:1435:34: warning: 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:1430: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:1431: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:1432: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:1433: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1434:33: 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:1435:34: warning: 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:1436: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:1435: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:1335: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:1436: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:1430: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:1431: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:1432: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:1433: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1434:33: 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:1435:34: warning: 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:1436: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:1436: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:1339: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:1430: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:1431: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:1432: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:1433: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1434:33: 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:1435:34: warning: 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:1436: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:1430: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:1431: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:1432: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:1433: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1434:33: 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:1435:34: warning: 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:1436: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:1430: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:1430: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:1431: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:1432: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:1433: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1434:33: 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:1435:34: warning: 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:1436: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:1430: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:1315: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:1430: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:1315: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:1431: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:1430: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:1431: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:1432: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:1433: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1434:33: 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:1435:34: warning: 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:1436: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:1431: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:1319: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:1431: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:1319: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:1432: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:1430: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:1431: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:1432: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:1433: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1434:33: 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:1435:34: warning: 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:1436: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:1432: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:1323: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:1432: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:1323: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:1433: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:1430: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:1431: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:1432: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:1433: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1434:33: 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:1435:34: warning: 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:1436: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:1433: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:1327: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:1434:33: 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:1430: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:1431: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:1432: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:1433: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1434:33: 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:1435:34: warning: 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:1436: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1331: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1331: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1430: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:1431: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:1432: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:1433: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1434:33: 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:1435:34: warning: 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:1436: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1331: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1331: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:1435:34: warning: 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:1430: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:1431: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:1432: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:1433: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1434:33: 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:1435:34: warning: 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:1436: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:1435: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:1335: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:1436: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:1430: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:1431: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:1432: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:1433: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1434:33: 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:1435:34: warning: 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:1436: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:1436: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:1339: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:1430: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:1431: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:1432: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:1433: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:1434:33: 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1435:34: warning: 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:1436: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:1434:33: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430: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:1315: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:1431: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1729:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT16_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3537:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1431: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:1319: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:1432: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1432: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:1323: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:1433: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1433: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:1327: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:1434:33: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1435: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:1335: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1331: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:1435:34: warning: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1435: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:1335: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:1436: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1436: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:1339: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:1434:33: 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:1434:33: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430: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:1315: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:1431: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1431: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:1319: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:1432: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1432: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:1323: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:1433: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1433: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:1327: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:1434:33: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1435: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:1335: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1331: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:1435:34: warning: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1435: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:1335: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:1436: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1436: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:1339: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:1434:33: 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:1434:33: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430: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:1315: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:1431: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1431: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:1319: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:1432: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1432: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:1323: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:1433: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1433: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:1327:38: note: in definition of macro 'GRN_UINT32_SET'
   unsigned int _val = (unsigned int)(val);\
                                      ^~~
expr.c:1662:19: note: in expansion of macro 'INTEGER_ARITHMETIC_OPERATION_BITWISE_AND'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                   ^~~~~~~~~~~~~~~~~
expr.c:1662:41: note: in expansion of macro 'GRN_UINT32_VALUE'
     set(ctx, res, integer_operation(x_, get(res)));                     \
                                         ^~~
expr.c:1757:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT32_SET,             \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3561:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1434:33: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1435: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:1335: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1331: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:1435:34: warning: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1435: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:1335: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:1436: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1436: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:1339: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:1434:33: 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:1434:33: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1701:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_UINT8_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3573:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430: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:1315: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:1431: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1431: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:1319: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:1432: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1432: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:1323: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:1433: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1433: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:1327: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:1434:33: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1435: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:1335: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1331: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:1435:34: warning: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1435: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:1335: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:1436: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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(
         ^
/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1436: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:1339: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:1434:33: 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:1434:33: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430: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:1315: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:1431: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1431: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:1319: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:1432: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1432: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:1323: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:1433: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1433: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:1327: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:1434:33: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1435: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:1335: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1331: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:1435:34: warning: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1435: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:1335: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:1436: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1436: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:1339: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:1434:33: 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:1434:33: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
expr.c:1614:12: note: in expansion of macro 'GRN_UINT32_VALUE'
       y_ = GRN_UINT32_VALUE(y);                                         \
            ^~~~~~~~~~~~~~~~
expr.c:1715:7: note: in expansion of macro 'NUMERIC_ARITHMETIC_OPERATION_DISPATCH'
       NUMERIC_ARITHMETIC_OPERATION_DISPATCH(GRN_INT16_SET,              \
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:1867:3: note: in expansion of macro 'ARITHMETIC_OPERATION_DISPATCH'
   ARITHMETIC_OPERATION_DISPATCH(x, y, res,                              \
   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expr.c:3597:9: note: in expansion of macro 'ARITHMETIC_BINARY_OPERATION_DISPATCH'
         ARITHMETIC_BINARY_OPERATION_DISPATCH(
         ^
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1430: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:1315: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:1431: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1431: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:1319: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:1432: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1432: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:1323: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:1433: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1433: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:1327: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:1434:33: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1435: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:1335: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1331: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:1435:34: warning: 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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1435: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:1335: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:1436: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed 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:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned 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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long 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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned 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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((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:1436: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:1339: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:1434:33: 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:1434:33: 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:1439: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:1439: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:1439: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:1439: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:1458: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:1451: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:1432: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:1432: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:1432: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:1433: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:1432: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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:4538:38: note: in expansion of macro 'GRN_INT32_VALUE'
           si->similarity_threshold = GRN_INT32_VALUE(*p);
                                      ^~~~~~~~~~~~~~~
expr.c: In function 'grn_scan_info_build_full':
../include/groonga/groonga.h:1432: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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:5137:12: note: in expansion of macro 'GRN_INT32_VALUE'
     return GRN_INT32_VALUE(score_buffer);
            ^~~~~~~~~~~~~~~
expr.c: In function 'grn_table_select_index_equal':
../include/groonga/groonga.h:1433: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:1438: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:1452: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:1451: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:1433: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:1438: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:1452: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:1451: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_range_key':
../include/groonga/groonga.h:1452: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:6210:13: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
       sid = GRN_UINT32_VALUE_AT(&(si->wv), 0);
             ^~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1451: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:6211: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:1452: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:6302:13: note: in expansion of macro 'GRN_UINT32_VALUE_AT'
       sid = GRN_UINT32_VALUE_AT(&(si->wv), 0);
             ^~~~~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1451: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:6303: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:1439:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:6465:22: note: in expansion of macro 'GRN_PTR_VALUE'
     grn_obj *index = GRN_PTR_VALUE(&si->index);
                      ^~~~~~~~~~~~~
../include/groonga/groonga.h:1439:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
expr.c:6568:29: note: in expansion of macro 'GRN_PTR_VALUE'
         grn_obj wv, **ip = &GRN_PTR_VALUE(&si->index);
                             ^~~~~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:6571:24: note: in expansion of macro 'GRN_INT32_VALUE'
         int32_t *wp = &GRN_INT32_VALUE(&si->wv);
                        ^~~~~~~~~~~~~~~
expr.c:6592:32: warning: cast increases required alignment of target type [-Wcast-align]
         optarg.weight_vector = (int *)GRN_BULK_HEAD(&wv);
                                ^
expr.c:6606:16: 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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:6610:37: note: in expansion of macro 'GRN_INT32_VALUE'
             optarg.weight_vector = &GRN_INT32_VALUE(&wv);
                                     ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1458: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:6616:27: note: in expansion of macro 'GRN_PTR_VALUE_AT'
           optarg.scorer = GRN_PTR_VALUE_AT(&(si->scorers), j);
                           ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1458: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:6618:13: note: in expansion of macro 'GRN_PTR_VALUE_AT'
             GRN_PTR_VALUE_AT(&(si->scorer_args_exprs), j);
             ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1452: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:6620:13: 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':
expr.c:577:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(grn_obj **)(GRN_BULK_CURR(obj));\
              ^
expr.c:6779:11: note: in expansion of macro 'GRN_PTR_POP'
           GRN_PTR_POP(&res_stack, res_);
           ^~~~~~~~~~~
expr.c:6819: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:6850: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:6860: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);
       ^~~~~~~~~~~~~
In file included from expr.c:7079:0:
grn_ecmascript.lemon:506:15: warning: cast increases required alignment of target type [-Wcast-align]
     columns = (grn_obj **)GRN_BULK_HEAD(&columns_buffer);
               ^
expr.c: In function 'accept_query_string':
expr.c:577:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(grn_obj **)(GRN_BULK_CURR(obj));\
              ^
expr.c:7106:3: note: in expansion of macro 'GRN_PTR_POP'
   GRN_PTR_POP(&efsi->token_stack, token);
   ^~~~~~~~~~~
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from expr.c:18:
expr.c: In function 'grn_expr_syntax_expand_term_by_func':
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
expr.c:8198: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:8476:13: note: in expansion of macro 'GRN_UINT32_POP'
             GRN_UINT32_POP(&but_stack, npbut);
             ^~~~~~~~~~~~~~
expr.c: In function 'grn_expr_snip_add_conditions':
expr.c:577:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(grn_obj **)(GRN_BULK_CURR(obj));\
              ^
expr.c:8511:7: note: in expansion of macro 'GRN_PTR_POP'
       GRN_PTR_POP(&keywords, keyword);
       ^~~~~~~~~~~
expr.c:577:14: warning: cast increases required alignment of target type [-Wcast-align]
     value = *(grn_obj **)(GRN_BULK_CURR(obj));\
              ^
expr.c:8521:7: note: in expansion of macro 'GRN_PTR_POP'
       GRN_PTR_POP(&keywords, keyword);
       ^~~~~~~~~~~
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 -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
/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o ii.lo ii.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
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)); }
                     ^
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);
          ^
ii.c: In function 'buffer_new':
ii.c:4071:9: warning: cast increases required alignment of target type [-Wcast-align]
   *br = (buffer_rec *)(((byte *)&b->terms[b->header.nterms]) + b->header.buffer_free);
         ^
ii.c: In function 'grn_ii_update_one':
ii.c:4482:14: warning: cast increases required alignment of target type [-Wcast-align]
         br = (buffer_rec *)(((byte *)&b->terms[b->header.nterms])
              ^
ii.c:4545: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:4721: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 ii.c:17:
ii.c: In function 'grn_ii_column_update':
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
ii.c:6147:50: note: in expansion of macro 'GRN_RECORD_VALUE'
           grn_uvector_add_element(ctx, &uvector, GRN_RECORD_VALUE(new_),
                                                  ^~~~~~~~~~~~~~~~
ii.c:6194:11: warning: cast increases required alignment of target type [-Wcast-align]
     tpe = (grn_id *)GRN_BULK_CURR(post);
           ^
ii.c:6195: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:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
ii.c:6260: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:11170: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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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:1089: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:1089: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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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:1432: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:1433: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:1436: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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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:1430: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:1431: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:1432: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:1433: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:1434:33: 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:1434:33: 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:1435:34: warning: 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:1436: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:1436: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:1430: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:1431: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:1432: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:1433: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:1434:33: 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:1434:33: 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:1435:34: warning: 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:1436: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:1436: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:1430: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:1430: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:1431: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:1432: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:1433: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:1434:33: 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:1434:33: 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:1435:34: warning: 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:1436: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:1436: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:1431: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:1430: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:1431: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:1432: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:1433: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:1434:33: 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:1434:33: 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:1435:34: warning: 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:1436: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:1436: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:1432: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:1430: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:1431: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:1432: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:1433: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:1434:33: 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:1434:33: 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:1435:34: warning: 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:1436: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:1436: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:1433: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:1430: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:1431: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:1432: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:1433: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:1434:33: 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:1434:33: 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:1435:34: warning: 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:1436: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:1436: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:1434:33: 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:1430: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:1431: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:1432: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:1433: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:1434:33: 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:1434:33: 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:1435:34: warning: 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:1436: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:1436: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:1434:33: 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:45:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1432: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:1433: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:1434:33: 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:1435:34: warning: 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:45:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1436: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1435:34: warning: 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:1430: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:1431: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:1432: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:1433: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:1434:33: 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:1434:33: 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:1435:34: warning: 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:1436: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:1436: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:1436: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:1432: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:1432: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:1433: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:1433: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:1434:33: 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:1434:33: 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:1435:34: warning: 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:1435:34: warning: 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:1436: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:1436: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:1430: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:1431: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:1432: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:1433: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:1434:33: 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:1434:33: 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:1435:34: warning: 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:1436: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:1436: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:1430: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:1431: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:1432: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:1433: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:1434:33: 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:1434:33: 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:1435:34: warning: 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:1436: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:1436: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:1430: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:1431: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:1432: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:1433: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:1434:33: 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:1434:33: 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:1435:34: warning: 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:1436: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:1436: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:1430: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:1430: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:1431: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:1432: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:1433: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:1434:33: 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:1434:33: 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:1435:34: warning: 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:1436: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:1436: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:1431: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:1430: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:1431: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:1432: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:1433: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:1434:33: 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:1434:33: 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:1435:34: warning: 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:1436: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:1436: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:1432: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:1430: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:1431: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:1432: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:1433: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:1434:33: 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:1434:33: 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:1435:34: warning: 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:1436: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:1436: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:1433: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:1430: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:1431: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:1432: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:1433: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:1434:33: 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:1434:33: 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:1435:34: warning: 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:1436: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:1436: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:1434:33: 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:1430: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:1431: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:1432: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:1433: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:1434:33: 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:1434:33: 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:1435:34: warning: 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:1436: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:1436: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:1434:33: 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:45:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1432: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:1433: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:1434:33: 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:1435:34: warning: 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:45:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1436: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1435:34: warning: 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:1430: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:1431: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:1432: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:1433: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:1434:33: 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:1434:33: 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:1435:34: warning: 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:1436: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:1436: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:1436: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:1432: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:1432: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:1433: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:1433: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:1434:33: 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:1434:33: 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:1435:34: warning: 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:1435:34: warning: 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:1436: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:1436: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:1430: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:1431: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:1432: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:1433: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:1434:33: 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:1434:33: 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:1435:34: warning: 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:1436: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:1436: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:1438: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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430: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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431: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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432: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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433: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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: 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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:45:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1432: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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433: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:653: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:1434:33: 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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: 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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:45:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1436: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:653: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: 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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: 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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436: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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430: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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431: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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432: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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433: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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: 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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:45:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1432: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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433: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:653: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:1434:33: 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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: 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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:45:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1436: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:653: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: 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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: 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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436: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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:45:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1432: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653: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:1434:33: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:45:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1436: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:45:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1432: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653: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:1434:33: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
In file included from ../include/groonga.h:45:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1436: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:653: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:1438: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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430: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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431: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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432: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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662: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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433: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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662: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:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: 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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:45:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1432: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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433: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:662: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:1434:33: 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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: 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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:45:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1436: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:662: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: 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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: 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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436: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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430: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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431: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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432: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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433: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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: 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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:45:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1432: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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433: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:662: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:1434:33: 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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: 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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:45:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1436: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:662: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: 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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: 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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436: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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:45:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1432: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662: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:1434:33: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:45:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1436: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:45:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1432: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662: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:1434:33: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
In file included from ../include/groonga.h:45:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1436: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:662: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:1438: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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430: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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431: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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432: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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433: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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: 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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:45:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1432: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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433: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:671: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:1434:33: 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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: 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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:45:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1436: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:671: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: 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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: 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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436: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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430: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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431: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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432: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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433: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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: 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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:45:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1432: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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433: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:671: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:1434:33: 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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: 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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:45:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1436: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:671: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: 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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: 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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436: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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:45:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1432: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671: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:1434:33: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:45:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1436: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:45:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1432: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671: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:1434:33: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:45:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1436: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, <=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:671: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:1438: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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430: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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431: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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432: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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433: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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: 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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:45:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1432: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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433: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:680: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:1434:33: 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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: 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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:45:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1436: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:680: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: 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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: 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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436: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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430: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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431: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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432: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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433: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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: 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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:45:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1432: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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433: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:680: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:1434:33: 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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: 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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:45:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1436: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:680: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: 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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: 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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436: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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:637:7: note: in expansion of macro 'DO_COMPARE_SCALAR'
       DO_COMPARE_SCALAR(element, y, r, op);\
       ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:45:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1432: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680: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:1434:33: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:45:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1436: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:605:11: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
           DO_COMPARE_SCALAR_BUILTIN((&x_key), y, r, op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:464:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:470:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:476:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:482:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:488:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:494:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:500:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:45:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1432: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680: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:1434:33: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
In file included from ../include/groonga.h:45:0,
                 from grn.h:761,
                 from operator.c:19:
../include/groonga/groonga.h:1436: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:546:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:552:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436: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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:558:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:437:51: 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:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:441:11: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
           DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:414:9: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
         DO_COMPARE_SCALAR_SUB_NUMERIC(&y_, op);\
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:374:16: note: in expansion of macro 'GRN_INT16_VALUE'
     r = (x_ op GRN_INT16_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:377:16: note: in expansion of macro 'GRN_UINT16_VALUE'
     r = (x_ op GRN_UINT16_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:380:16: note: in expansion of macro 'GRN_INT32_VALUE'
     r = (x_ op GRN_INT32_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:383:16: note: in expansion of macro 'GRN_UINT32_VALUE'
     r = (x_ op GRN_UINT32_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:386:16: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (x_ op GRN_INT64_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:389:33: note: in expansion of macro 'GRN_INT64_VALUE'
     r = (GRN_TIME_PACK(x_,0) op GRN_INT64_VALUE(y));\
                                 ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1435:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT64_VALUE(obj) (*((long long unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:392:16: note: in expansion of macro 'GRN_UINT64_VALUE'
     r = (x_ op GRN_UINT64_VALUE(y));\
                ^~~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680:3: note: in expansion of macro 'DO_COMPARE'
   DO_COMPARE(x, y, r, >=);
   ^~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
operator.c:395:16: note: in expansion of macro 'GRN_FLOAT_VALUE'
     r = (x_ op GRN_FLOAT_VALUE(y));\
                ^~~~~~~~~~~~~~~
operator.c:420:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_NUMERIC'
     DO_COMPARE_SCALAR_SUB_NUMERIC(y,op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:455:5: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB_BUILTIN'
     DO_COMPARE_SCALAR_SUB_BUILTIN(op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:580:7: note: in expansion of macro 'DO_COMPARE_SCALAR_SUB'
       DO_COMPARE_SCALAR_SUB(op);\
       ^~~~~~~~~~~~~~~~~~~~~
operator.c:619:5: note: in expansion of macro 'DO_COMPARE_SCALAR_BUILTIN'
     DO_COMPARE_SCALAR_BUILTIN(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~~~~~~~~~
operator.c:644:5: note: in expansion of macro 'DO_COMPARE_SCALAR'
     DO_COMPARE_SCALAR(x, y, r, op);\
     ^~~~~~~~~~~~~~~~~
operator.c:680: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:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
operator.c:1027:50: note: in expansion of macro 'GRN_RECORD_VALUE'
   record_key_len = grn_table_get_key(ctx, table, GRN_RECORD_VALUE(record),
                                                  ^~~~~~~~~~~~~~~~
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing     -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o output.lo output.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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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:1452: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:1452: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:1452: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:1452: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:1452: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:1452: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:1452: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:1452: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:1452: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:1452: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:1452: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:1452: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:1452: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:1452: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:1430: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:1431: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:1432: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:1433: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:1434: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:1435: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:1436: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:1434: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:1438: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:1438: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:1458: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:1438: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);
                       ^
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 -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:930:5: note: in expansion of macro 'grn_ntog'
     grn_ntog((keybuf), (key), (size));\
     ^~~~~~~~
pat.c:1876: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:930:5: note: in expansion of macro 'grn_ntog'
     grn_ntog((keybuf), (key), (size));\
     ^~~~~~~~
pat.c:1905: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:930:5: note: in expansion of macro 'grn_ntog'
     grn_ntog((keybuf), (key), (size));\
     ^~~~~~~~
pat.c:1905:7: note: in expansion of macro 'KEY_DEC'
       KEY_DEC(pat, curr, key, len);
       ^~~~~~~
pat.c:939:9: warning: cast increases required alignment of target type [-Wcast-align]
       *((int64_t *)(keybuf)) = v ^ (((v^(1LL<<63))>> 63)|(1LL<<63));  \
         ^
pat.c:1905:7: note: in expansion of macro 'KEY_DEC'
       KEY_DEC(pat, curr, key, len);
       ^~~~~~~
pat.c: In function 'grn_pat_set_value':
pat.c:1980:15: warning: cast increases required alignment of target type [-Wcast-align]
             *((int32_t *)v) += *((int32_t *)value);
               ^
pat.c:1983:15: warning: cast increases required alignment of target type [-Wcast-align]
             *((int64_t *)v) += *((int64_t *)value);
               ^
pat.c:1992:15: warning: cast increases required alignment of target type [-Wcast-align]
             *((int32_t *)v) -= *((int32_t *)value);
               ^
pat.c:1995: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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o proc.lo proc.c
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing     -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o report.lo report.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
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 -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
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:1458: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:1120: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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1156: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1255:12: note: in expansion of macro 'GRN_INT16_VALUE'
     return GRN_INT16_VALUE(number) < 0;
            ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1257:12: note: in expansion of macro 'GRN_INT32_VALUE'
     return GRN_INT32_VALUE(number) < 0;
            ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1434: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:1259:12: note: in expansion of macro 'GRN_INT64_VALUE'
     return GRN_INT64_VALUE(number) < 0;
            ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
proc.c:1261:12: note: in expansion of macro 'GRN_TIME_VALUE'
     return GRN_TIME_VALUE(number) < 0;
            ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1263: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:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1309:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
proc.c:1331:24: note: in expansion of macro 'GRN_INT16_VALUE'
                        GRN_INT16_VALUE(number1),
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1430:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT16_VALUE(obj) (*((signed short *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1310:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
proc.c:1332:24: note: in expansion of macro 'GRN_INT16_VALUE'
                        GRN_INT16_VALUE(number2));
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
proc.c:1309:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
proc.c:1335:24: note: in expansion of macro 'GRN_UINT16_VALUE'
                        GRN_UINT16_VALUE(number1),
                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1431:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT16_VALUE(obj) (*((unsigned short *)GRN_BULK_HEAD(obj)))
                                  ^
proc.c:1310:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
proc.c:1336:24: note: in expansion of macro 'GRN_UINT16_VALUE'
                        GRN_UINT16_VALUE(number2));
                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1309:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
proc.c:1339:24: note: in expansion of macro 'GRN_INT32_VALUE'
                        GRN_INT32_VALUE(number1),
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1310:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
proc.c:1340:24: note: in expansion of macro 'GRN_INT32_VALUE'
                        GRN_INT32_VALUE(number2));
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
proc.c:1309:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
proc.c:1343:24: note: in expansion of macro 'GRN_UINT32_VALUE'
                        GRN_UINT32_VALUE(number1),
                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
proc.c:1310:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
proc.c:1344:24: note: in expansion of macro 'GRN_UINT32_VALUE'
                        GRN_UINT32_VALUE(number2));
                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1434: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:1309:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
proc.c:1347:24: note: in expansion of macro 'GRN_INT64_VALUE'
                        GRN_INT64_VALUE(number1),
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1434: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:1310:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
proc.c:1348:24: note: in expansion of macro 'GRN_INT64_VALUE'
                        GRN_INT64_VALUE(number2));
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1435: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:1309:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
proc.c:1351:24: note: in expansion of macro 'GRN_UINT64_VALUE'
                        GRN_UINT64_VALUE(number1),
                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1435: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:1310:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
proc.c:1352:24: note: in expansion of macro 'GRN_UINT64_VALUE'
                        GRN_UINT64_VALUE(number2));
                        ^~~~~~~~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1309:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
proc.c:1355:24: note: in expansion of macro 'GRN_FLOAT_VALUE'
                        GRN_FLOAT_VALUE(number1),
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:1310:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
proc.c:1356:24: note: in expansion of macro 'GRN_FLOAT_VALUE'
                        GRN_FLOAT_VALUE(number2));
                        ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1434: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:1309:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value1 = value1;\
                            ^~~~~~
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
proc.c:1359:24: note: in expansion of macro 'GRN_TIME_VALUE'
                        GRN_TIME_VALUE(number1),
                        ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1434: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:1310:28: note: in definition of macro 'COMPARE_AND_RETURN'
     type computed_value2 = value2;\
                            ^~~~~~
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
proc.c:1360: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:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
proc.c:1646: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:1438: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:1344:26: note: in definition of macro 'GRN_RECORD_SET'
   grn_id _val = (grn_id)(val);\
                          ^~~
proc.c:2229: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
proc.c:2353:9: note: in expansion of macro 'GRN_TIME_VALUE'
         GRN_TIME_VALUE(data->max) - GRN_TIME_VALUE(data->min);
         ^~~~~~~~~~~~~~
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
proc.c:2353: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:1452: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:2608: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:1457: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:2691: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:1457: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:2733: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:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
proc.c:2734: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:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:2881:21: note: in expansion of macro 'GRN_INT32_VALUE'
       real_offset = GRN_INT32_VALUE(&int32_value);
                     ^~~~~~~~~~~~~~~
../include/groonga/groonga.h:1432:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT32_VALUE(obj) (*((int *)GRN_BULK_HEAD(obj)))
                                 ^
proc.c:2896: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 -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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:1434: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:1434: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:1434: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:1436: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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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:1436: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:1436: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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o snip.lo snip.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c snip.c  -fPIC -DPIC -o .libs/snip.o
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing     -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o store.lo store.c
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing     -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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_get_value':
store.c:1324: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:1455: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:1546:27: warning: cast increases required alignment of target type [-Wcast-align]
             grn_id id = *((grn_id *)v);
                           ^
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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:1430: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:1431: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:1432: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:1433: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:1434: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:1435: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:1436: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:1438: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:1438: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:1458: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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o time.lo time.c
libtool: compile:  gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\"libgroonga-0.dll\" -DGRN_PLUGINS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/plugins\" -DGRN_RELATIVE_PLUGINS_DIR=\"lib/groonga/plugins\" -DGRN_RUBY_SCRIPTS_DIR=\"/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\"lib/groonga/scripts/ruby\" -DGRN_LOG_PATH=\"/var/log/groonga/groonga.log\" -DGRN_DEFAULT_DOCUMENT_ROOT=\"/usr/share/groonga/html/admin\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\"share/groonga/html/admin\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o token_cursor.lo token_cursor.c
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing     -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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:1458: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:1432: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:1458: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:1458: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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c tokenizer.c  -fPIC -DPIC -o .libs/tokenizer.o
In file included from ../include/groonga.h:22:0,
                 from grn.h:761,
                 from tokenizer.c:18:
tokenizer.c: In function 'grn_tokenizer_query_open':
../include/groonga/groonga.h:1433: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:1433: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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o tokenizers.lo tokenizers.c
/bin/bash ../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -D_REENTRANT -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -DGRN_DAT_EXPORT -I.. -I../include -I../vendor/mruby-source/include -I../vendor/onigmo-source  -DMRB_INT64 -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing     -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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 -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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:18:
util.c: In function 'grn_ptr_inspect':
../include/groonga/groonga.h:1439:31: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_PTR_VALUE(obj) (*((grn_obj **)GRN_BULK_HEAD(obj)))
                               ^
util.c:384: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:1458: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:405: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:586: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:18:
util.c: In function 'grn_time_inspect':
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
util.c:912: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:1441:25: warning: cast increases required alignment of target type [-Wcast-align]
   grn_geo_point *_val = (grn_geo_point *)GRN_BULK_HEAD(obj);\
                         ^
util.c:942: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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
util.c:987: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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
util.c:1008: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:1438:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_RECORD_VALUE(obj) (*((grn_id *)GRN_BULK_HEAD(obj)))
                                  ^
util.c:1051: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 -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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 -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:1457: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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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>>=. -fPIE -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  -fPIE -pie -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/libonig.la -llz4 -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/libonig.a -llz4 -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -fPIE -pie -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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:1438: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:1432: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:1432: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:1432: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:1432: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:39: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:1432: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:1432: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:1432: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:1432: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:1432: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:1432: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:1436: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:1438: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:1438: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:1438: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:1438: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1437: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:1433: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1437: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:1438: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:1438: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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -avoid-version -module -no-undefined -fPIE -pie -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 table
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins/table'
/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -c -o table.lo table.c
libtool: compile:  gcc -DHAVE_CONFIG_H -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c table.c  -fPIC -DPIC -o .libs/table.o
In file included from ../../include/groonga.h:39:0,
                 from ../../lib/grn.h:761,
                 from ../../lib/grn_ctx.h:21,
                 from table.c:20:
table.c: In function 'command_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);\
                       ^
table.c:335:5: note: in expansion of macro 'GRN_OBJ_FORMAT_FIN'
     GRN_OBJ_FORMAT_FIN(ctx, &format);
     ^~~~~~~~~~~~~~~~~~
table.c: In function 'command_set':
../../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);\
                       ^
table.c:432:7: note: in expansion of macro 'GRN_OBJ_FORMAT_FIN'
       GRN_OBJ_FORMAT_FIN(ctx, &format);
       ^~~~~~~~~~~~~~~~~~
table.c: In function 'command_get':
../../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);\
                       ^
table.c:555:5: note: in expansion of macro 'GRN_OBJ_FORMAT_FIN'
     GRN_OBJ_FORMAT_FIN(ctx, &format);
     ^~~~~~~~~~~~~~~~~~
table.c: In function 'command_pull':
../../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);\
                       ^
table.c:639:13: note: in expansion of macro 'GRN_OBJ_FORMAT_FIN'
             GRN_OBJ_FORMAT_FIN(ctx, &format);
             ^~~~~~~~~~~~~~~~~~
/bin/bash ../../libtool  --tag=CC   --mode=link gcc  -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -avoid-version -module -no-undefined -fPIE -pie -Wl,-z,relro -Wl,-z,now -o table.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/table table.lo  ../../lib/libgroonga.la -lmsgpackc
libtool: link: gcc -shared  -fPIC -DPIC  .libs/table.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,table.so -o .libs/table.so
libtool: link: ( cd ".libs" && rm -f "table.la" && ln -s "../table.la" "table.la" )
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins/table'
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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -avoid-version -module -no-undefined -fPIE -pie -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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
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 -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
/bin/bash ../../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -avoid-version -module -no-undefined -fPIE -pie -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -avoid-version -module -no-undefined  -fPIE -pie -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c vector.c  -fPIC -DPIC -o .libs/vector.o
libtool: compile:  gcc -DHAVE_CONFIG_H -I. -I../.. -I../.. -I../../include -I../../lib -Wdate-time -D_FORTIFY_SOURCE=2 -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -c time.c  -fPIC -DPIC -o .libs/time.o
In file included from ../../include/groonga.h:22:0,
                 from ../../include/groonga/plugin.h:23,
                 from string.c:23:
string.c: In function 'func_string_substring':
../../include/groonga/groonga.h:1432: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:1434: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:1434: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);
              ^~~~~~~~~~~~~~~
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:1432: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:1434: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
vector.c:143:14: note: in expansion of macro 'GRN_INT64_VALUE'
       from = GRN_INT64_VALUE(&buffer);
              ^~~~~~~~~~~~~~~
../../include/groonga/groonga.h:1432: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:1432: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:1434: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:1434: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:1434: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:1458: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
string.c:192:18: note: in expansion of macro 'GRN_INT64_VALUE'
         length = GRN_INT64_VALUE(&buffer);
                  ^~~~~~~~~~~~~~~
In file included from ../../include/groonga.h:22:0,
                 from ../../include/groonga/plugin.h:23,
                 from number.c:23:
number.c: In function 'func_number_classify':
../../include/groonga/groonga.h:1430: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:1430: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:1431: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:1431: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:1432: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:1432: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:1433: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:1433: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:1434: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
number.c:93:20: note: in expansion of macro 'GRN_INT64_VALUE'
     interval_raw = getter(&casted_interval);                            \
                    ^~~~~~
number.c:105:3: note: in expansion of macro 'CLASSIFY_RAW'
   CLASSIFY_RAW(type, getter, setter, CLASSIFIER_INT)
   ^~~~~~~~~~~~
number.c:139:5: note: in expansion of macro 'CLASSIFY_INT'
     CLASSIFY_INT(int64_t, GRN_INT64_VALUE, GRN_INT64_SET);
     ^~~~~~~~~~~~
../../include/groonga/groonga.h:1435: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:1435: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:1436: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:1436:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_FLOAT_VALUE(obj) (*((double *)GRN_BULK_HEAD(obj)))
                                 ^
number.c:93:20: note: in expansion of macro 'GRN_FLOAT_VALUE'
     interval_raw = getter(&casted_interval);                            \
                    ^~~~~~
number.c:117:3: note: in expansion of macro 'CLASSIFY_RAW'
   CLASSIFY_RAW(double, getter, setter, CLASSIFIER_FLOAT)
   ^~~~~~~~~~~~
number.c:145:5: note: in expansion of macro 'CLASSIFY_FLOAT'
     CLASSIFY_FLOAT(GRN_FLOAT_VALUE, GRN_FLOAT_SET);
     ^~~~~~~~~~~~~~
In file included from ../../include/groonga.h:22:0,
                 from ../../include/groonga/plugin.h:23,
                 from time.c:23:
time.c: In function 'func_time_classify_raw':
../../include/groonga/groonga.h:1433: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
time.c:137:16: note: in expansion of macro 'GRN_TIME_VALUE'
     time_raw = GRN_TIME_VALUE(time);
                ^~~~~~~~~~~~~~
/bin/bash ../../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -avoid-version -module -no-undefined -fPIE -pie -Wl,-z,relro -Wl,-z,now -o vector.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/functions vector.lo  ../../lib/libgroonga.la
/bin/bash ../../libtool  --tag=CC   --mode=link gcc  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -avoid-version -module -no-undefined -fPIE -pie -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -avoid-version -module -no-undefined -fPIE -pie -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -avoid-version -module -no-undefined -fPIE -pie -Wl,-z,relro -Wl,-z,now -o string.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/functions string.lo  ../../lib/libgroonga.la
libtool: link: gcc -shared  -fPIC -DPIC  .libs/vector.o   -Wl,-rpath -Wl,/<<PKGBUILDDIR>>/lib/.libs ../../lib/.libs/libgroonga.so  -g -O2 -fstack-protector-strong -Wl,-z -Wl,relro -Wl,-z -Wl,now   -Wl,-soname -Wl,vector.so -o .libs/vector.so
libtool: link: gcc -shared  -fPIC -DPIC  .libs/time.o   -Wl,-rpath -Wl,/<<PKGBUILDDIR>>/lib/.libs ../../lib/.libs/libgroonga.so  -g -O2 -fstack-protector-strong -Wl,-z -Wl,relro -Wl,-z -Wl,now   -Wl,-soname -Wl,time.so -o .libs/time.so
libtool: link: gcc -shared  -fPIC -DPIC  .libs/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 "vector.la" && ln -s "../vector.la" "vector.la" )
libtool: link: gcc -shared  -fPIC -DPIC  .libs/string.o   -Wl,-rpath -Wl,/<<PKGBUILDDIR>>/lib/.libs ../../lib/.libs/libgroonga.so  -g -O2 -fstack-protector-strong -Wl,-z -Wl,relro -Wl,-z -Wl,now   -Wl,-soname -Wl,string.so -o .libs/string.so
libtool: link: ( cd ".libs" && rm -f "number.la" && ln -s "../number.la" "number.la" )
libtool: link: ( cd ".libs" && rm -f "time.la" && ln -s "../time.la" "time.la" )
libtool: link: ( cd ".libs" && rm -f "string.la" && ln -s "../string.la" "string.la" )
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins/functions'
Making all in expression_rewriters
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins/expression_rewriters'
make[4]: Nothing to be done for 'all'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins/expression_rewriters'
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins'
make[4]: Nothing to be done for 'all-am'.
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/plugins'
Making all in src
make[3]: Entering directory '/<<PKGBUILDDIR>>/src'
Making all in suggest
make[4]: Entering directory '/<<PKGBUILDDIR>>/src/suggest'
/bin/bash ../../libtool  --tag=CC   --mode=compile gcc -DHAVE_CONFIG_H -DGRN_DLL_FILENAME=L\""libgroonga-0.dll"\" -DGRN_PLUGINS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/plugins"\" -DGRN_RELATIVE_PLUGINS_DIR=\""lib/groonga/plugins"\" -DGRN_RUBY_SCRIPTS_DIR=\""/usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby"\" -DGRN_RELATIVE_RUBY_SCRIPTS_DIR=\""lib/groonga/scripts/ruby"\" -DGRN_LOG_PATH=\""/var/log/groonga/groonga.log"\" -DGRN_DEFAULT_DOCUMENT_ROOT=\""/usr/share/groonga/html/admin"\" -DGRN_DEFAULT_RELATIVE_DOCUMENT_ROOT=\""share/groonga/html/admin"\" -I../.. -I. -I../../include -I../../lib    -Wdate-time -D_FORTIFY_SOURCE=2 -fno-strict-aliasing    -I../../vendor/mruby-source/include  -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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:1432: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:1433: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1437: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:1438: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:1432: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:1433: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1437: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:1438: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:1432: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:1433: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1437: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:1438: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:1432: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:1433: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1437: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:1438: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:1432: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:1433: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1437: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:1438: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:1432: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:1433: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1437: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:1438: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:1432: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:1432: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:1432: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:1432: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:1433: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1437: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:1438: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:1432: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:1433: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1437: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:1438: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:1432: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:1433: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1437: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:1438: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:1432: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:1433: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1437: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:1438: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:1432: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:1433: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../../include/groonga/groonga.h:1437: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:1438: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>>=. -fPIE -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 -fPIE -pie -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 -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>>=. -fPIE -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 -fPIE -pie -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -no-undefined -fPIE -pie -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>>=. -fPIE -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 -fPIE -pie -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>>=. -fPIE -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 -fPIE -pie -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>>=. -fPIE -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 -fPIE -pie -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>>=. -fPIE -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 -fPIE -pie -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.5 && make build)
make[5]: Entering directory '/<<PKGBUILDDIR>>/vendor/nginx-1.11.5'
make -f objs/Makefile
make[6]: Entering directory '/<<PKGBUILDDIR>>/vendor/nginx-1.11.5'
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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:297: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:300: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:305: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:320: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:377: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:381: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:417: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:419: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:421: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:422: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:425: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:431: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:503: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:608:14: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     ctx.name = "new binary process";
              ^
src/core/nginx.c:640:14: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     env[n++] = "SPARE=XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"
              ^
src/core/nginx.c:661: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:1066: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:1153: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:1235:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/nginx.c:1255: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:1278: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:1374: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:1427:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/nginx.c:1440: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:1459: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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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:406: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:421: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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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:348:12: warning: cast increases required alignment of target type [-Wcast-align]
     slot = (ngx_path_t **) (p + cmd->offset);
            ^
src/core/ngx_file.c:351:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/ngx_file.c:377:20: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             return "invalid value";
                    ^~~~~~~~~~~~~~~
src/core/ngx_file.c:385: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:446:14: warning: cast increases required alignment of target type [-Wcast-align]
     access = (ngx_uint_t *) (confp + cmd->offset);
              ^
src/core/ngx_file.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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_radix_tree.o \
	src/core/ngx_radix_tree.c
src/core/ngx_radix_tree.c: In function 'ngx_radix_alloc':
src/core/ngx_radix_tree.c:483:9: warning: cast increases required alignment of target type [-Wcast-align]
     p = (ngx_radix_node_t *) tree->start;
         ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_slab.o \
	src/core/ngx_slab.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_connection.o \
	src/core/ngx_connection.c
src/core/ngx_times.c:58:26: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
 static char  *week[] = { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };
                          ^~~~~
src/core/ngx_times.c:58:33: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
 static char  *week[] = { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };
                                 ^~~~~
src/core/ngx_times.c:58:40: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
 static char  *week[] = { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };
                                        ^~~~~
src/core/ngx_times.c:58:47: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
 static char  *week[] = { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };
                                               ^~~~~
src/core/ngx_times.c:58:54: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
 static char  *week[] = { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };
                                                      ^~~~~
src/core/ngx_times.c:58:61: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
 static char  *week[] = { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };
                                                             ^~~~~
src/core/ngx_times.c:58:68: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
 static char  *week[] = { "Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat" };
                                                                    ^~~~~
src/core/ngx_times.c:59:28: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
 static char  *months[] = { "Jan", "Feb", "Mar", "Apr", "May", "Jun",
                            ^~~~~
src/core/ngx_times.c:59:35: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
 static char  *months[] = { "Jan", "Feb", "Mar", "Apr", "May", "Jun",
                                   ^~~~~
src/core/ngx_times.c:59:42: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
 static char  *months[] = { "Jan", "Feb", "Mar", "Apr", "May", "Jun",
                                          ^~~~~
src/core/ngx_times.c:59:49: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
 static char  *months[] = { "Jan", "Feb", "Mar", "Apr", "May", "Jun",
                                                 ^~~~~
src/core/ngx_times.c:59:56: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
 static char  *months[] = { "Jan", "Feb", "Mar", "Apr", "May", "Jun",
                                                        ^~~~~
src/core/ngx_times.c:59:63: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
 static char  *months[] = { "Jan", "Feb", "Mar", "Apr", "May", "Jun",
                                                               ^~~~~
src/core/ngx_times.c:60:28: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                            "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" };
                            ^~~~~
src/core/ngx_times.c:60:35: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                            "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" };
                                   ^~~~~
src/core/ngx_times.c:60:42: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                            "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" };
                                          ^~~~~
src/core/ngx_times.c:60:49: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                            "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" };
                                                 ^~~~~
src/core/ngx_times.c:60:56: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                            "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" };
                                                        ^~~~~
src/core/ngx_times.c:60:63: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                            "Jul", "Aug", "Sep", "Oct", "Nov", "Dec" };
                                                               ^~~~~
src/core/ngx_slab.c: In function 'ngx_slab_init':
src/core/ngx_slab.c:98:13: warning: cast increases required alignment of target type [-Wcast-align]
     slots = (ngx_slab_page_t *) p;
             ^
src/core/ngx_slab.c:113:19: warning: cast increases required alignment of target type [-Wcast-align]
     pool->pages = (ngx_slab_page_t *) p;
                   ^
src/core/ngx_slab.c:116:23: warning: cast increases required alignment of target type [-Wcast-align]
     pool->free.next = (ngx_slab_page_t *) p;
                       ^
src/core/ngx_slab.c: In function 'ngx_slab_alloc_locked':
src/core/ngx_slab.c:195:13: warning: cast increases required alignment of target type [-Wcast-align]
     slots = (ngx_slab_page_t *) ((u_char *) pool + sizeof(ngx_slab_pool_t));
             ^
src/core/ngx_slab.c:204:26: warning: cast increases required alignment of target type [-Wcast-align]
                 bitmap = (uintptr_t *) (pool->start + p);
                          ^
src/core/ngx_slab.c:335:22: warning: cast increases required alignment of target type [-Wcast-align]
             bitmap = (uintptr_t *) (pool->start + p);
                      ^
src/core/ngx_slab.c: In function 'ngx_slab_free_locked':
src/core/ngx_slab.c:453: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:63: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:482:25: warning: cast increases required alignment of target type [-Wcast-align]
                 slots = (ngx_slab_page_t *)
                         ^
src/core/ngx_slab.c:532:25: warning: cast increases required alignment of target type [-Wcast-align]
                 slots = (ngx_slab_page_t *)
                         ^
src/core/ngx_slab.c:571:25: warning: cast increases required alignment of target type [-Wcast-align]
                 slots = (ngx_slab_page_t *)
                         ^
src/core/ngx_slab.c:603: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:63: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:609: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:63: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:636: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:63: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:643: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:63: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:698: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:63:13: note: expected 'char *' but argument is of type 'const char *'
 static void ngx_slab_error(ngx_slab_pool_t *pool, ngx_uint_t level,
             ^~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_spinlock.o \
	src/core/ngx_spinlock.c
src/core/ngx_connection.c: In function 'ngx_clone_listening':
src/core/ngx_connection.c:109:11: warning: cast increases required alignment of target type [-Wcast-align]
     ccf = (ngx_core_conf_t *) ngx_get_conf(cf->cycle->conf_ctx,
           ^
In file included from src/core/ngx_core.h:62:0,
                 from src/core/ngx_connection.c:9:
src/core/ngx_connection.c: In function 'ngx_drain_connections':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/core/ngx_connection.c:1241:13: note: in expansion of macro 'ngx_queue_data'
         c = ngx_queue_data(q, ngx_connection_t, queue);
             ^~~~~~~~~~~~~~
src/core/ngx_connection.c: In function 'ngx_connection_local_sockaddr':
src/core/ngx_connection.c:1292:20: warning: cast increases required alignment of target type [-Wcast-align]
             sin6 = (struct sockaddr_in6 *) c->local_sockaddr;
                    ^
src/core/ngx_connection.c:1308:19: warning: cast increases required alignment of target type [-Wcast-align]
             sin = (struct sockaddr_in *) c->local_sockaddr;
                   ^
src/core/ngx_connection.c:1319:55: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             ngx_connection_error(c, ngx_socket_errno, "getsockname() failed");
                                                       ^~~~~~~~~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/core/ngx_connection.c:9:
src/core/ngx_connection.h:217:11: note: expected 'char *' but argument is of type 'const char *'
 ngx_int_t ngx_connection_error(ngx_connection_t *c, ngx_err_t err, char *text);
           ^~~~~~~~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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:308: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:323:19: warning: cast increases required alignment of target type [-Wcast-align]
         old_ccf = (ngx_core_conf_t *) ngx_get_conf(old_cycle->conf_ctx,
                   ^
src/core/ngx_cycle.c:812:19: warning: cast increases required alignment of target type [-Wcast-align]
         old_ccf = (ngx_core_conf_t *) ngx_get_conf(old_cycle->conf_ctx,
                   ^
src/core/ngx_cycle.c: In function 'ngx_init_zone_pool':
src/core/ngx_cycle.c:884:10: warning: cast increases required alignment of target type [-Wcast-align]
     sp = (ngx_slab_pool_t *) zn->shm.addr;
          ^
src/core/ngx_cycle.c: In function 'ngx_delete_pidfile':
src/core/ngx_cycle.c:994:11: warning: cast increases required alignment of target type [-Wcast-align]
     ccf = (ngx_core_conf_t *) ngx_get_conf(cycle->conf_ctx, ngx_core_module);
           ^
src/core/ngx_cycle.c: In function 'ngx_signal_process':
src/core/ngx_cycle.c:1016:11: warning: cast increases required alignment of target type [-Wcast-align]
     ccf = (ngx_core_conf_t *) ngx_get_conf(cycle->conf_ctx, ngx_core_module);
           ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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:420: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:992:10: warning: cast increases required alignment of target type [-Wcast-align]
     fp = (ngx_flag_t *) (p + cmd->offset);
          ^
src/core/ngx_conf_file.c:995: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:1031:13: warning: cast increases required alignment of target type [-Wcast-align]
     field = (ngx_str_t *) (p + cmd->offset);
             ^
src/core/ngx_conf_file.c:1034: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:1059: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:1096: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:1134:10: warning: cast increases required alignment of target type [-Wcast-align]
     np = (ngx_int_t *) (p + cmd->offset);
          ^
src/core/ngx_conf_file.c:1137:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/ngx_conf_file.c:1143: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:1165:10: warning: cast increases required alignment of target type [-Wcast-align]
     sp = (size_t *) (p + cmd->offset);
          ^
src/core/ngx_conf_file.c:1167:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/ngx_conf_file.c:1174: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:1196:10: warning: cast increases required alignment of target type [-Wcast-align]
     op = (off_t *) (p + cmd->offset);
          ^
src/core/ngx_conf_file.c:1198:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/ngx_conf_file.c:1205: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:1227:11: warning: cast increases required alignment of target type [-Wcast-align]
     msp = (ngx_msec_t *) (p + cmd->offset);
           ^
src/core/ngx_conf_file.c:1229:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/ngx_conf_file.c:1236: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:1258:10: warning: cast increases required alignment of target type [-Wcast-align]
     sp = (time_t *) (p + cmd->offset);
          ^
src/core/ngx_conf_file.c:1260:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/ngx_conf_file.c:1267: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:1288:12: warning: cast increases required alignment of target type [-Wcast-align]
     bufs = (ngx_bufs_t *) (p + cmd->offset);
            ^
src/core/ngx_conf_file.c:1290:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/core/ngx_conf_file.c:1297:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "invalid value";
                ^~~~~~~~~~~~~~~
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_enum_slot':
src/core/ngx_conf_file.c:1318:10: warning: cast increases required alignment of target type [-Wcast-align]
     np = (ngx_uint_t *) (p + cmd->offset);
          ^
src/core/ngx_conf_file.c:1321: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:1356:10: warning: cast increases required alignment of target type [-Wcast-align]
     np = (ngx_uint_t *) (p + cmd->offset);
          ^
src/core/ngx_resolver.c: In function 'ngx_resolver_cleanup_tree':
src/core/ngx_resolver.c:55:5: warning: cast increases required alignment of target type [-Wcast-align]
     (ngx_resolver_node_t *)                                                  \
     ^
src/core/ngx_resolver.c:342: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:377: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:650: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:938:16: warning: cast increases required alignment of target type [-Wcast-align]
         sin6 = (struct sockaddr_in6 *) ctx->addr.sockaddr;
                ^
src/core/ngx_resolver.c:953: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:1248: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:1279: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:1513: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:1759:18: note: in expansion of macro 'ngx_queue_data'
             rn = ngx_queue_data(q, ngx_resolver_node_t, queue);
                  ^~~~~~~~~~~~~~
src/core/ngx_resolver.c:1785: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:1804: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:1863: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:2138:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             err = "invalid name in DNS response";
                 ^
src/core/ngx_resolver.c:2175:21: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                 err = "unexpected A record in DNS response";
                     ^
src/core/ngx_resolver.c:2180:21: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                 err = "invalid A record in DNS response";
                     ^
src/core/ngx_resolver.c:2196:21: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                 err = "unexpected AAAA record in DNS response";
                     ^
src/core/ngx_resolver.c:2201:21: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                 err = "invalid AAAA record in DNS response";
                     ^
src/core/ngx_resolver.c:2419: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:2523:9: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     err = "short DNS response";
         ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_open_file_cache.o \
	src/core/ngx_open_file_cache.c
src/core/ngx_resolver.c: In function 'ngx_resolver_process_srv':
src/core/ngx_resolver.c:2680:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             err = "invalid name DNS response";
                 ^
src/core/ngx_resolver.c:2908: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:3248:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             err = "invalid name in DNS response";
                 ^
src/core/ngx_resolver.c:3359: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:3401: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:3442: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:3481: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:3517: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:3555: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:3556: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:3598: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:3599: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:3894:16: warning: cast increases required alignment of target type [-Wcast-align]
         sin6 = (struct sockaddr_in6 *) addr->sockaddr;
                ^
src/core/ngx_resolver.c:3909: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:3964:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             err = "name is out of response";
                 ^
src/core/ngx_resolver.c:3969: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:4327:9: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         "Format error",     /* FORMERR */
         ^~~~~~~~~~~~~~
src/core/ngx_resolver.c:4328:9: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         "Server failure",   /* SERVFAIL */
         ^~~~~~~~~~~~~~~~
src/core/ngx_resolver.c:4329:9: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         "Host not found",   /* NXDOMAIN */
         ^~~~~~~~~~~~~~~~
src/core/ngx_resolver.c:4330:9: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         "Unimplemented",    /* NOTIMP */
         ^~~~~~~~~~~~~~~
src/core/ngx_resolver.c:4331:9: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         "Operation refused" /* REFUSED */
         ^~~~~~~~~~~~~~~~~~~
src/core/ngx_resolver.c:4339:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "Operation timed out";
                ^~~~~~~~~~~~~~~~~~~~~
src/core/ngx_resolver.c:4342:12: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     return "Unknown error";
            ^~~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/core/ngx_crypt.o \
	src/core/ngx_crypt.c
In file included from src/core/ngx_core.h:62:0,
                 from src/core/ngx_open_file_cache.c:9:
src/core/ngx_open_file_cache.c: In function 'ngx_open_file_cache_cleanup':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/core/ngx_open_file_cache.c:107:16: note: in expansion of macro 'ngx_queue_data'
         file = ngx_queue_data(q, ngx_cached_open_file_t, queue);
                ^~~~~~~~~~~~~~
src/core/ngx_open_file_cache.c: In function 'ngx_open_cached_file':
src/core/ngx_open_file_cache.c:261:28: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                 of->failed = file->disable_symlinks ? ngx_openat_file_n
                            ^
src/core/ngx_open_file_cache.c: In function 'ngx_open_file_wrapper':
src/core/ngx_open_file_cache.c:642:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             of->failed = ngx_open_file_n;
                        ^
src/core/ngx_open_file_cache.c:667:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             of->failed = ngx_open_file_n;
                        ^
src/core/ngx_open_file_cache.c:682:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             of->failed = ngx_openat_file_n;
                        ^
src/core/ngx_open_file_cache.c:721:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             of->failed = ngx_openat_file_n;
                        ^
src/core/ngx_open_file_cache.c:765:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         of->failed = ngx_openat_file_n;
                    ^
src/core/ngx_open_file_cache.c: In function 'ngx_file_info_wrapper':
src/core/ngx_open_file_cache.c:808:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             of->failed = ngx_file_info_n;
                        ^
src/core/ngx_open_file_cache.c:826:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         of->failed = ngx_fd_info_n;
                    ^
In file included from src/core/ngx_core.h:62:0,
                 from src/core/ngx_open_file_cache.c:9:
src/core/ngx_open_file_cache.c: In function 'ngx_expire_old_cached_files':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/core/ngx_open_file_cache.c:1118:16: note: in expansion of macro 'ngx_queue_data'
         file = ngx_queue_data(q, ngx_cached_open_file_t, queue);
                ^~~~~~~~~~~~~~
src/core/ngx_open_file_cache.c: In function 'ngx_open_file_cache_rbtree_insert_value':
src/core/ngx_open_file_cache.c:1164:20: warning: cast increases required alignment of target type [-Wcast-align]
             file = (ngx_cached_open_file_t *) node;
                    ^
src/core/ngx_open_file_cache.c:1165:25: warning: cast increases required alignment of target type [-Wcast-align]
             file_temp = (ngx_cached_open_file_t *) temp;
                         ^
src/core/ngx_open_file_cache.c: In function 'ngx_open_file_lookup':
src/core/ngx_open_file_cache.c:1211:16: warning: cast increases required alignment of target type [-Wcast-align]
         file = (ngx_cached_open_file_t *) node;
                ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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
src/core/ngx_syslog.c:24:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "kern", "user", "mail", "daemon", "auth", "intern", "lpr", "news", "uucp",
     ^~~~~~
src/core/ngx_syslog.c:24:13: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "kern", "user", "mail", "daemon", "auth", "intern", "lpr", "news", "uucp",
             ^~~~~~
src/core/ngx_syslog.c:24:21: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "kern", "user", "mail", "daemon", "auth", "intern", "lpr", "news", "uucp",
                     ^~~~~~
src/core/ngx_syslog.c:24:29: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "kern", "user", "mail", "daemon", "auth", "intern", "lpr", "news", "uucp",
                             ^~~~~~~~
src/core/ngx_syslog.c:24:39: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "kern", "user", "mail", "daemon", "auth", "intern", "lpr", "news", "uucp",
                                       ^~~~~~
src/core/ngx_syslog.c:24:47: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "kern", "user", "mail", "daemon", "auth", "intern", "lpr", "news", "uucp",
                                               ^~~~~~~~
src/core/ngx_syslog.c:24:57: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "kern", "user", "mail", "daemon", "auth", "intern", "lpr", "news", "uucp",
                                                         ^~~~~
src/core/ngx_syslog.c:24:64: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "kern", "user", "mail", "daemon", "auth", "intern", "lpr", "news", "uucp",
                                                                ^~~~~~
src/core/ngx_syslog.c:24:72: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "kern", "user", "mail", "daemon", "auth", "intern", "lpr", "news", "uucp",
                                                                        ^~~~~~
src/core/ngx_syslog.c:25:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "clock", "authpriv", "ftp", "ntp", "audit", "alert", "cron", "local0",
     ^~~~~~~
src/core/ngx_syslog.c:25:14: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "clock", "authpriv", "ftp", "ntp", "audit", "alert", "cron", "local0",
              ^~~~~~~~~~
src/core/ngx_syslog.c:25:26: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "clock", "authpriv", "ftp", "ntp", "audit", "alert", "cron", "local0",
                          ^~~~~
src/core/ngx_syslog.c:25:33: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "clock", "authpriv", "ftp", "ntp", "audit", "alert", "cron", "local0",
                                 ^~~~~
src/core/ngx_syslog.c:25:40: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "clock", "authpriv", "ftp", "ntp", "audit", "alert", "cron", "local0",
                                        ^~~~~~~
src/core/ngx_syslog.c:25:49: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "clock", "authpriv", "ftp", "ntp", "audit", "alert", "cron", "local0",
                                                 ^~~~~~~
src/core/ngx_syslog.c:25:58: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "clock", "authpriv", "ftp", "ntp", "audit", "alert", "cron", "local0",
                                                          ^~~~~~
src/core/ngx_syslog.c:25:66: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "clock", "authpriv", "ftp", "ntp", "audit", "alert", "cron", "local0",
                                                                  ^~~~~~~~
src/core/ngx_syslog.c:26:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "local1", "local2", "local3", "local4", "local5", "local6", "local7",
     ^~~~~~~~
src/core/ngx_syslog.c:26:15: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "local1", "local2", "local3", "local4", "local5", "local6", "local7",
               ^~~~~~~~
src/core/ngx_syslog.c:26:25: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "local1", "local2", "local3", "local4", "local5", "local6", "local7",
                         ^~~~~~~~
src/core/ngx_syslog.c:26:35: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "local1", "local2", "local3", "local4", "local5", "local6", "local7",
                                   ^~~~~~~~
src/core/ngx_syslog.c:26:45: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "local1", "local2", "local3", "local4", "local5", "local6", "local7",
                                             ^~~~~~~~
src/core/ngx_syslog.c:26:55: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "local1", "local2", "local3", "local4", "local5", "local6", "local7",
                                                       ^~~~~~~~
src/core/ngx_syslog.c:26:65: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "local1", "local2", "local3", "local4", "local5", "local6", "local7",
                                                                 ^~~~~~~~
src/core/ngx_syslog.c:32:5: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "emerg", "alert", "crit", "error", "warn", "notice", "info", "debug", NULL
     ^~~~~~~
src/core/ngx_syslog.c:32:14: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "emerg", "alert", "crit", "error", "warn", "notice", "info", "debug", NULL
              ^~~~~~~
src/core/ngx_syslog.c:32:23: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "emerg", "alert", "crit", "error", "warn", "notice", "info", "debug", NULL
                       ^~~~~~
src/core/ngx_syslog.c:32:31: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "emerg", "alert", "crit", "error", "warn", "notice", "info", "debug", NULL
                               ^~~~~~~
src/core/ngx_syslog.c:32:40: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "emerg", "alert", "crit", "error", "warn", "notice", "info", "debug", NULL
                                        ^~~~~~
src/core/ngx_syslog.c:32:48: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "emerg", "alert", "crit", "error", "warn", "notice", "info", "debug", NULL
                                                ^~~~~~~~
src/core/ngx_syslog.c:32:58: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "emerg", "alert", "crit", "error", "warn", "notice", "info", "debug", NULL
                                                          ^~~~~~
src/core/ngx_syslog.c:32:66: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     "emerg", "alert", "crit", "error", "warn", "notice", "info", "debug", NULL
                                                                  ^~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/event/ngx_event_timer.o \
	src/event/ngx_event_timer.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/event/ngx_event_posted.o \
	src/event/ngx_event_posted.c
src/event/ngx_event.c: In function 'ngx_event_module_init':
src/event/ngx_event.c:442:11: warning: cast increases required alignment of target type [-Wcast-align]
     ccf = (ngx_core_conf_t *) ngx_get_conf(cycle->conf_ctx, ngx_core_module);
           ^
src/event/ngx_event.c: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";
                ^~~~~~~~~~~~~~
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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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
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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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);
           ^~~~~~~~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_udp_send.o \
	src/os/unix/ngx_udp_send.c
src/os/unix/ngx_udp_recv.c: In function 'ngx_udp_unix_recv':
src/os/unix/ngx_udp_recv.c:59:46: warning: passing argument 3 of 'ngx_connection_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             n = ngx_connection_error(c, err, "recv() failed");
                                              ^~~~~~~~~~~~~~~
In file included from src/core/ngx_core.h:89:0,
                 from src/os/unix/ngx_udp_recv.c:9:
src/core/ngx_connection.h: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_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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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_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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_channel.o \
	src/os/unix/ngx_channel.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_setaffinity.o \
	src/os/unix/ngx_setaffinity.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_setproctitle.o \
	src/os/unix/ngx_setproctitle.c
src/os/unix/ngx_process.c:41:7: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
       "SIG" ngx_value(NGX_RECONFIGURE_SIGNAL),
       ^~~~~
src/os/unix/ngx_process.c:42:7: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
       "reload",
       ^~~~~~~~
src/os/unix/ngx_process.c:46:7: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
       "SIG" ngx_value(NGX_REOPEN_SIGNAL),
       ^~~~~
src/os/unix/ngx_process.c:47:7: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
       "reopen",
       ^~~~~~~~
src/os/unix/ngx_process.c:51:7: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
       "SIG" ngx_value(NGX_NOACCEPT_SIGNAL),
       ^~~~~
src/os/unix/ngx_process.c:52:7: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
       "",
       ^~
src/os/unix/ngx_process.c:56:7: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
       "SIG" ngx_value(NGX_TERMINATE_SIGNAL),
       ^~~~~
src/os/unix/ngx_process.c:57:7: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
       "stop",
       ^~~~~~
src/os/unix/ngx_process.c:61:7: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
       "SIG" ngx_value(NGX_SHUTDOWN_SIGNAL),
       ^~~~~
src/os/unix/ngx_process.c:62:7: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
       "quit",
       ^~~~~~
src/os/unix/ngx_process.c:66:7: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
       "SIG" ngx_value(NGX_CHANGEBIN_SIGNAL),
       ^~~~~
src/os/unix/ngx_process.c:67:7: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
       "",
       ^~
src/os/unix/ngx_process.c:70:16: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { SIGALRM, "SIGALRM", "", ngx_signal_handler },
                ^~~~~~~~~
src/os/unix/ngx_process.c:70:27: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { SIGALRM, "SIGALRM", "", ngx_signal_handler },
                           ^~
src/os/unix/ngx_process.c:72:15: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { SIGINT, "SIGINT", "", ngx_signal_handler },
               ^~~~~~~~
src/os/unix/ngx_process.c:72:25: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { SIGINT, "SIGINT", "", ngx_signal_handler },
                         ^~
src/os/unix/ngx_process.c:74:14: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { SIGIO, "SIGIO", "", ngx_signal_handler },
              ^~~~~~~
src/os/unix/ngx_process.c:74:23: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { SIGIO, "SIGIO", "", ngx_signal_handler },
                       ^~
src/os/unix/ngx_process.c:76:16: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { SIGCHLD, "SIGCHLD", "", ngx_signal_handler },
                ^~~~~~~~~
src/os/unix/ngx_process.c:76:27: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { SIGCHLD, "SIGCHLD", "", ngx_signal_handler },
                           ^~
src/os/unix/ngx_process.c:78:15: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { SIGSYS, "SIGSYS, SIG_IGN", "", SIG_IGN },
               ^~~~~~~~~~~~~~~~~
src/os/unix/ngx_process.c:78:34: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { SIGSYS, "SIGSYS, SIG_IGN", "", SIG_IGN },
                                  ^~
src/os/unix/ngx_process.c:80:16: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { SIGPIPE, "SIGPIPE, SIG_IGN", "", SIG_IGN },
                ^~~~~~~~~~~~~~~~~~
src/os/unix/ngx_process.c:80:36: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { SIGPIPE, "SIGPIPE, SIG_IGN", "", SIG_IGN },
                                    ^~
src/os/unix/ngx_process.c:82:16: warning: initialization discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     { 0, NULL, "", NULL }
                ^~
src/os/unix/ngx_process.c: In function 'ngx_signal_handler':
src/os/unix/ngx_process.c:329:12: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     action = "";
            ^
src/os/unix/ngx_process.c:339:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", shutting down";
                    ^
src/os/unix/ngx_process.c:345:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", exiting";
                    ^
src/os/unix/ngx_process.c:351:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                 action = ", stop accepting connections";
                        ^
src/os/unix/ngx_process.c:357:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", reconfiguring";
                    ^
src/os/unix/ngx_process.c:362:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", reopening logs";
                    ^
src/os/unix/ngx_process.c:375:24: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                 action = ", ignoring";
                        ^
src/os/unix/ngx_process.c:381:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", changing binary";
                    ^
src/os/unix/ngx_process.c:410:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", shutting down";
                    ^
src/os/unix/ngx_process.c:416:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", exiting";
                    ^
src/os/unix/ngx_process.c:421:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", reopening logs";
                    ^
src/os/unix/ngx_process.c:427:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             action = ", ignoring";
                    ^
src/os/unix/ngx_process.c: In function 'ngx_process_get_status':
src/os/unix/ngx_process.c:504:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         process = "unknown process";
                 ^
src/os/unix/ngx_process.c: In function 'ngx_unlock_mutexes':
src/os/unix/ngx_process.c:582:14: warning: cast increases required alignment of target type [-Wcast-align]
         sp = (ngx_slab_pool_t *) shm_zone[i].shm.addr;
              ^
src/os/unix/ngx_process.c: In function 'ngx_debug_point':
src/os/unix/ngx_process.c:598:11: warning: cast increases required alignment of target type [-Wcast-align]
     ccf = (ngx_core_conf_t *) ngx_get_conf(ngx_cycle->conf_ctx,
           ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs \
	-o objs/src/os/unix/ngx_linux_init.o \
	src/os/unix/ngx_linux_init.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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
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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/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:153: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:224: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:161: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:224: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:169: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:224: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:177: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:224: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:185: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:224: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: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:224: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:224: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:213: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:224: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:219: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:224: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:225: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:224: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:368: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:224: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:375: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:224: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:382: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:224: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:392: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:224: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:402: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:224: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:427: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:224:16: note: expected 'char *' but argument is of type 'const char *'
 void ngx_cdecl ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err,
                ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:442: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:224: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:486: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:224: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:496: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:224: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:505: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:224: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:558: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:224: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:598: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:224: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:638: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:224: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:654: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:224: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:689: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:224: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:723: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:224: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:731: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:224: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:739: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:224: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:1017: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:224: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:1024: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:224: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:1078: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:224: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:1140: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:224: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:1145: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:224: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:1157: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:224: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:1172: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:224: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:1315: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:1322: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:1505: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:224: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:1577: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:1830: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:1944: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:2107: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:224: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:2230: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:2115: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:2262: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:2115: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:2268: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:2115: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:2278: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:2115: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:2284: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:2115: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:2299: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:2115: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:2305: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:2115:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2313:23: warning: passing argument 4 of 'ngx_ssl_error' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
                       "EVP_DigestUpdate() failed");
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2115: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:2321: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:2115: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:2347: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:2432: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:2586: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:2697: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:2764: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:2916: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:2115: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:2986: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:2115: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:2992: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:2115: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:2998: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:2115: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: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, "HMAC_Init_ex() failed");
                                                     ^~~~~~~~~~~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:2115: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:3042: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:2115: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:3358: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:2115: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:3364: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:2115: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:3649:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/event/ngx_event_openssl.c:3660: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:2115: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:3666: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:2115:1: note: expected 'char *' but argument is of type 'const char *'
 ngx_ssl_error(ngx_uint_t level, ngx_log_t *log, ngx_err_t err, char *fmt, ...)
 ^~~~~~~~~~~~~
src/event/ngx_event_openssl_stapling.c: In function 'ngx_ssl_stapling_certificate':
src/event/ngx_event_openssl_stapling.c:168: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:224: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:227: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:224: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:234: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:224: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:242: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:224: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:255: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:224: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:328: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:224: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:335: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:224: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_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:224: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:350: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:224: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:513: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:224: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:606: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:224: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:622: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:224: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:629: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:224: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:650: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:224: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:657: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:224: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:679: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:224: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:839: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:1201: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:224: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:1208: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:224: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:1214: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:224: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:1222: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:224: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:1236: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:224: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:1278: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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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:1490:15: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hash.name = "server_names_hash";
               ^
src/http/ngx_http.c: In function 'ngx_http_types_slot':
src/http/ngx_http.c:1919:13: warning: cast increases required alignment of target type [-Wcast-align]
     types = (ngx_array_t **) (p + cmd->offset);
             ^
src/http/ngx_http.c: In function 'ngx_http_merge_types':
src/http/ngx_http.c:2003:19: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         hash.name = "test_types_hash";
                   ^
src/http/ngx_http.c:2033:19: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         hash.name = "test_types_hash";
                   ^
src/http/ngx_http_core_module.c: In function 'ngx_http_core_try_files_phase':
src/http/ngx_http_core_module.c:1193:21: warning: cast increases required alignment of target type [-Wcast-align]
             while (*(uintptr_t *) e.ip) {
                     ^
src/http/ngx_http_core_module.c:1194: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:1238:21: warning: cast increases required alignment of target type [-Wcast-align]
             while (*(uintptr_t *) e.ip) {
                     ^
src/http/ngx_http_core_module.c:1239: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:2303: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:3668:25: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         types_hash.name = "types_hash";
                         ^
src/http/ngx_http_core_module.c:3710:25: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         types_hash.name = "types_hash";
                         ^
src/http/ngx_http_core_module.c: In function 'ngx_http_core_limit_except':
src/http/ngx_http_core_module.c:4502: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:4594:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/ngx_http_core_module.c:4692: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:4704:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/ngx_http_core_module.c:4716: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:4856: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:4937: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:5021:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/ngx_http_core_module.c:5029:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "invalid value";
                ^~~~~~~~~~~~~~~
src/http/ngx_http_core_module.c:5039: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:5052: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:5069: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:5197:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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_special_response.c: In function 'ngx_http_send_refresh':
src/http/ngx_http_special_response.c:789: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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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
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";
                        ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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: 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:966: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_open_file_cache':
src/http/modules/ngx_http_log_module.c:1655:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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_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_variables.c: In function 'ngx_http_variable_request':
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_variables.c:665: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:705:10: warning: cast increases required alignment of target type [-Wcast-align]
     sp = (size_t *) ((char *) r + data);
          ^
src/http/ngx_http_script.c: In function 'ngx_http_script_set_var_code':
src/http/ngx_http_variables.c: In function 'ngx_http_variable_request_set_size':
src/http/ngx_http_variables.c:739: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:753:10: warning: cast increases required alignment of target type [-Wcast-align]
     h = *(ngx_table_elt_t **) ((char *) r + data);
          ^
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_variables.c: In function 'ngx_http_variable_headers_internal':
src/http/ngx_http_variables.c:796:9: warning: cast increases required alignment of target type [-Wcast-align]
     a = (ngx_array_t *) ((char *) r + data);
         ^
src/http/ngx_http_script.c: In function 'ngx_http_script_var_set_handler_code':
src/http/ngx_http_script.c:1712:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_var_handler_code_t *) e->ip;
            ^
src/http/ngx_http_script.c: In function 'ngx_http_script_var_code':
src/http/ngx_http_script.c:1731:12: warning: cast increases required alignment of target type [-Wcast-align]
     code = (ngx_http_script_var_code_t *) e->ip;
            ^
src/http/ngx_http_variables.c: In function 'ngx_http_variable_binary_remote_addr':
src/http/ngx_http_variables.c:1159:16: warning: cast increases required alignment of target type [-Wcast-align]
         sin6 = (struct sockaddr_in6 *) r->connection->sockaddr;
                ^
src/http/ngx_http_variables.c:1171:15: warning: cast increases required alignment of target type [-Wcast-align]
         sin = (struct sockaddr_in *) r->connection->sockaddr;
               ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/ngx_http_upstream.o \
	src/http/ngx_http_upstream.c
src/http/ngx_http_variables.c: In function 'ngx_http_variable_sent_connection':
src/http/ngx_http_variables.c:1833:11: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         p = "upgrade";
           ^
src/http/ngx_http_variables.c:1837:11: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         p = "keep-alive";
           ^
src/http/ngx_http_variables.c:1841: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:2090: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:224: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:2651:15: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hash.name = "variables_hash";
               ^
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_connect':
src/http/ngx_http_upstream.c:1347: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:1539: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:1549: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:1701: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:224: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:1816: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:1934: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);
           ^~~~~~~~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/ngx_http_upstream_round_robin.o \
	src/http/ngx_http_upstream_round_robin.c
src/http/ngx_http_upstream.c: In function 'ngx_http_upstream_process_header':
src/http/ngx_http_upstream.c:2072: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:2454:28: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             c->log->action = "connecting to upstream";
                            ^
src/http/ngx_http_upstream.c:2455: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:2624: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:2761: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:2932: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:3034:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     c->log->action = "proxying upgraded connection";
                    ^
src/http/ngx_http_upstream.c:3051: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:3067: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:3145: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:3151: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:3315:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     c->log->action = "sending to client";
                    ^
src/http/ngx_http_upstream.c:3319: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:3339:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     c->log->action = "reading upstream";
                    ^
src/http/ngx_http_upstream.c:3342: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:3632:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     c->log->action = "sending to client";
                    ^
src/http/ngx_http_upstream.c:3663: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:3705:20: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     c->log->action = "reading upstream";
                    ^
src/http/ngx_http_upstream.c:3731: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:4209: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:4250: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:4690: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:4705: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:4872: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:5827: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:5830: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:5972: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:6188: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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/ngx_http_write_filter_module.o \
	src/http/ngx_http_write_filter_module.c
src/http/ngx_http_file_cache.c: In function 'ngx_http_file_cache_init':
src/http/ngx_http_file_cache.c:127:21: warning: cast increases required alignment of target type [-Wcast-align]
     cache->shpool = (ngx_slab_pool_t *) shm_zone->shm.addr;
                     ^
src/http/ngx_http_file_cache.c: In function 'ngx_http_file_cache_read':
src/http/ngx_http_file_cache.c: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:2567: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:2593: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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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:692: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:1030: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:1113:13: note: in expansion of macro 'ngx_queue_data'
         s = ngx_queue_data(q, ngx_http_v2_stream_t, queue);
             ^~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_charset_filter_module.o \
	src/http/modules/ngx_http_charset_filter_module.c
src/http/modules/ngx_http_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_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";
               ^
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";
                ^~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_userid_filter_module.o \
	src/http/modules/ngx_http_userid_filter_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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_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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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
src/http/v2/ngx_http_v2.c: In function 'ngx_http_v2_init':
src/http/v2/ngx_http_v2.c:217: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:62:0,
                 from src/http/v2/ngx_http_v2.c:9:
src/http/v2/ngx_http_v2.c: In function 'ngx_http_v2_write_handler':
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:437: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/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:516: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:543: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:682:17: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     log->action = "reading PROXY protocol";
                 ^
src/http/v2/ngx_http_v2.c:686: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:2213: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:2467: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:2655: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:2740: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:2880: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:2903: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:2913: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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/v2/ngx_http_v2_table.o \
	src/http/v2/ngx_http_v2_table.c
src/http/v2/ngx_http_v2.c: In function 'ngx_http_v2_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:4393: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:4423: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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/v2/ngx_http_v2_huff_decode.o \
	src/http/v2/ngx_http_v2_huff_decode.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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);
         ^~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/v2/ngx_http_v2_module.c: In function 'ngx_http_v2_recv_buffer_size':
src/http/v2/ngx_http_v2_module.c:404: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:463: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:217: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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_limit_req_module.o \
	src/http/modules/ngx_http_limit_req_module.c
src/http/modules/ngx_http_access_module.c: In function 'ngx_http_access_handler':
src/http/modules/ngx_http_access_module.c:139:19: warning: cast increases required alignment of target type [-Wcast-align]
             sin = (struct sockaddr_in *) r->connection->sockaddr;
                   ^
src/http/modules/ngx_http_access_module.c:147:16: warning: cast increases required alignment of target type [-Wcast-align]
         sin6 = (struct sockaddr_in6 *) r->connection->sockaddr;
                ^
src/http/modules/ngx_http_limit_conn_module.c: In function 'ngx_http_limit_conn_handler':
src/http/modules/ngx_http_limit_conn_module.c:186:18: warning: cast increases required alignment of target type [-Wcast-align]
         shpool = (ngx_slab_pool_t *) limits[i].shm_zone->shm.addr;
                  ^
src/http/modules/ngx_http_limit_conn_module.c:206:18: warning: cast increases required alignment of target type [-Wcast-align]
             lc = (ngx_http_limit_conn_node_t *) &node->color;
                  ^
src/http/modules/ngx_http_limit_conn_module.c: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";
                    ^~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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_req_module.c: In function 'ngx_http_limit_req_rbtree_insert_value':
src/http/modules/ngx_http_limit_req_module.c:337:19: warning: cast increases required alignment of target type [-Wcast-align]
             lrn = (ngx_http_limit_req_node_t *) &node->color;
                   ^
src/http/modules/ngx_http_limit_req_module.c:337:13: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
             lrn = (ngx_http_limit_req_node_t *) &node->color;
             ^~~
src/http/modules/ngx_http_limit_req_module.c:338:20: warning: cast increases required alignment of target type [-Wcast-align]
             lrnt = (ngx_http_limit_req_node_t *) &temp->color;
                    ^
src/http/modules/ngx_http_limit_req_module.c:338:13: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
             lrnt = (ngx_http_limit_req_node_t *) &temp->color;
             ^~~~
src/http/modules/ngx_http_limit_req_module.c: In function 'ngx_http_limit_req_lookup':
src/http/modules/ngx_http_limit_req_module.c:392:14: warning: cast increases required alignment of target type [-Wcast-align]
         lr = (ngx_http_limit_req_node_t *) &node->color;
              ^
src/http/modules/ngx_http_limit_req_module.c:392:9: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
         lr = (ngx_http_limit_req_node_t *) &node->color;
         ^~
src/http/modules/ngx_http_limit_req_module.c:453:10: warning: cast increases required alignment of target type [-Wcast-align]
     lr = (ngx_http_limit_req_node_t *) &node->color;
          ^
src/http/modules/ngx_http_limit_req_module.c:453:5: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing]
     lr = (ngx_http_limit_req_node_t *) &node->color;
     ^~
In file included from src/core/ngx_core.h:62:0,
                 from src/http/modules/ngx_http_limit_req_module.c:9:
src/http/modules/ngx_http_limit_req_module.c: In function 'ngx_http_limit_req_expire':
src/core/ngx_queue.h:104:5: warning: cast increases required alignment of target type [-Wcast-align]
     (type *) ((u_char *) q - offsetof(type, link))
     ^
src/http/modules/ngx_http_limit_req_module.c:569:14: note: in expansion of macro 'ngx_queue_data'
         lr = ngx_queue_data(q, ngx_http_limit_req_node_t, queue);
              ^~~~~~~~~~~~~~
src/http/modules/ngx_http_limit_req_module.c:599:16: warning: cast increases required alignment of target type [-Wcast-align]
         node = (ngx_rbtree_node_t *)
                ^
src/http/modules/ngx_http_limit_req_module.c: In function 'ngx_http_limit_req_init_zone':
src/http/modules/ngx_http_limit_req_module.c:639:19: warning: cast increases required alignment of target type [-Wcast-align]
     ctx->shpool = (ngx_slab_pool_t *) shm_zone->shm.addr;
                   ^
src/http/modules/ngx_http_limit_req_module.c: In function 'ngx_http_limit_req':
src/http/modules/ngx_http_limit_req_module.c:927:20: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
             return "is duplicate";
                    ^~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_split_clients_module.o \
	src/http/modules/ngx_http_split_clients_module.c
src/http/modules/ngx_http_geo_module.c: In function 'ngx_http_geo_cidr_variable':
src/http/modules/ngx_http_geo_module.c:189:14: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'ngx_http_variable_value_t * {aka struct <anonymous> *}' [-Wbad-function-cast]
         vv = (ngx_http_variable_value_t *)
              ^
src/http/modules/ngx_http_geo_module.c:198:21: warning: cast increases required alignment of target type [-Wcast-align]
         inaddr6 = &((struct sockaddr_in6 *) addr.sockaddr)->sin6_addr;
                     ^
src/http/modules/ngx_http_geo_module.c:207:18: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'ngx_http_variable_value_t * {aka struct <anonymous> *}' [-Wbad-function-cast]
             vv = (ngx_http_variable_value_t *)
                  ^
src/http/modules/ngx_http_geo_module.c:211:18: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'ngx_http_variable_value_t * {aka struct <anonymous> *}' [-Wbad-function-cast]
             vv = (ngx_http_variable_value_t *)
                  ^
src/http/modules/ngx_http_geo_module.c:219:15: warning: cast increases required alignment of target type [-Wcast-align]
         sin = (struct sockaddr_in *) addr.sockaddr;
               ^
src/http/modules/ngx_http_geo_module.c:222:14: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'ngx_http_variable_value_t * {aka struct <anonymous> *}' [-Wbad-function-cast]
         vv = (ngx_http_variable_value_t *)
              ^
src/http/modules/ngx_http_geo_module.c: In function 'ngx_http_geo_range_variable':
src/http/modules/ngx_http_geo_module.c:263:25: warning: cast increases required alignment of target type [-Wcast-align]
             inaddr6 = &((struct sockaddr_in6 *) addr.sockaddr)->sin6_addr;
                         ^
src/http/modules/ngx_http_geo_module.c:281:19: warning: cast increases required alignment of target type [-Wcast-align]
             sin = (struct sockaddr_in *) addr.sockaddr;
                   ^
src/http/modules/ngx_http_geo_module.c: In function 'ngx_http_geo_cidr_add':
src/http/modules/ngx_http_geo_module.c:1156:15: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'ngx_http_variable_value_t * {aka struct <anonymous> *}' [-Wbad-function-cast]
         old = (ngx_http_variable_value_t *)
               ^
src/http/modules/ngx_http_geo_module.c:1194:15: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'ngx_http_variable_value_t * {aka struct <anonymous> *}' [-Wbad-function-cast]
         old = (ngx_http_variable_value_t *)
               ^
src/http/modules/ngx_http_geo_module.c: In function 'ngx_http_geo_include_binary_base':
src/http/modules/ngx_http_geo_module.c:1475:14: warning: cast increases required alignment of target type [-Wcast-align]
     header = (ngx_http_geo_header_t *) base;
              ^
src/http/modules/ngx_http_geo_module.c:1485:10: warning: cast increases required alignment of target type [-Wcast-align]
     vv = (ngx_http_variable_value_t *) (base + sizeof(ngx_http_geo_header_t));
          ^
src/http/modules/ngx_http_geo_module.c:1492:14: warning: cast increases required alignment of target type [-Wcast-align]
         vv = (ngx_http_variable_value_t *) ((u_char *) vv + len);
              ^
src/http/modules/ngx_http_geo_module.c:1502:25: warning: cast increases required alignment of target type [-Wcast-align]
             ranges[i] = (ngx_http_geo_range_t *)
                         ^
src/http/modules/ngx_http_geo_module.c:1513:28: warning: cast increases required alignment of target type [-Wcast-align]
             range->value = (ngx_http_variable_value_t *)
                            ^
src/http/modules/ngx_http_geo_module.c:1518:17: warning: cast increases required alignment of target type [-Wcast-align]
         range = (ngx_http_geo_range_t *) ((u_char *) range + sizeof(void *));
                 ^
src/http/modules/ngx_http_geo_module.c: In function 'ngx_http_geo_create_binary_base':
src/http/modules/ngx_http_geo_module.c:1591:14: warning: cast increases required alignment of target type [-Wcast-align]
     ranges = (ngx_http_geo_range_t **) p;
              ^
src/http/modules/ngx_http_geo_module.c:1601:17: warning: cast increases required alignment of target type [-Wcast-align]
         range = (ngx_http_geo_range_t *) p;
                 ^
src/http/modules/ngx_http_geo_module.c: In function 'ngx_http_geo_copy_values':
src/http/modules/ngx_http_geo_module.c:1646:10: warning: cast increases required alignment of target type [-Wcast-align]
     vv = (ngx_http_variable_value_t *) p;
          ^
src/http/modules/ngx_http_map_module.c: In function 'ngx_http_map_variable':
src/http/modules/ngx_http_map_module.c:134: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:292: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:425: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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_referer_module.o \
	src/http/modules/ngx_http_referer_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_ssl_module.o \
	src/http/modules/ngx_http_ssl_module.c
src/http/modules/ngx_http_referer_module.c: In function 'ngx_http_referer_merge_conf':
src/http/modules/ngx_http_referer_module.c:376:15: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hash.name = "referer_hash";
               ^
src/http/modules/ngx_http_rewrite_module.c: In function 'ngx_http_rewrite_handler':
src/http/modules/ngx_http_rewrite_module.c:178:13: warning: cast increases required alignment of target type [-Wcast-align]
     while (*(uintptr_t *) e->ip) {
             ^
src/http/modules/ngx_http_rewrite_module.c:179:17: warning: cast increases required alignment of target type [-Wcast-align]
         code = *(ngx_http_script_code_pt *) e->ip;
                 ^
src/http/modules/ngx_http_rewrite_module.c: In function 'ngx_http_rewrite_if':
src/http/modules/ngx_http_rewrite_module.c:634:19: warning: cast increases required alignment of target type [-Wcast-align]
         if_code = (ngx_http_script_if_code_t *)
                   ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_proxy_module.o \
	src/http/modules/ngx_http_proxy_module.c
src/http/modules/ngx_http_ssl_module.c: In function 'ngx_http_ssl_password_file':
src/http/modules/ngx_http_ssl_module.c:813:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_fastcgi_module.o \
	src/http/modules/ngx_http_fastcgi_module.c
src/http/modules/ngx_http_proxy_module.c: In function 'ngx_http_proxy_create_request':
src/http/modules/ngx_http_proxy_module.c:1224:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) le.ip) {
                 ^
src/http/modules/ngx_http_proxy_module.c:1225: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:1244:13: warning: cast increases required alignment of target type [-Wcast-align]
     while (*(uintptr_t *) le.ip) {
             ^
src/http/modules/ngx_http_proxy_module.c:1245:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) le.ip) {
                 ^
src/http/modules/ngx_http_proxy_module.c:1246: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:1348:13: warning: cast increases required alignment of target type [-Wcast-align]
     while (*(uintptr_t *) le.ip) {
             ^
src/http/modules/ngx_http_proxy_module.c:1349: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:1354: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:1356: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:1357: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:1368:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) e.ip) {
                 ^
src/http/modules/ngx_http_proxy_module.c:1369: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:1424:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) e.ip) {
                 ^
src/http/modules/ngx_http_proxy_module.c:1425: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:2542: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:2558: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:3278: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:3595: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:3617: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:4091:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_proxy_module.c:4103: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:4148:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_proxy_module.c:4157: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:4206: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:4235:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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:854:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) le.ip) {
                 ^
src/http/modules/ngx_http_fastcgi_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_fastcgi_module.c:859: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:862: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:863: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:1015:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) le.ip) {
                 ^
src/http/modules/ngx_http_fastcgi_module.c:1017: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:1020: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:1023: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:1024: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:1031:25: warning: cast increases required alignment of target type [-Wcast-align]
                 while (*(uintptr_t *) e.ip) {
                         ^
src/http/modules/ngx_http_fastcgi_module.c:1032: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:1054:21: warning: cast increases required alignment of target type [-Wcast-align]
             while (*(uintptr_t *) e.ip) {
                     ^
src/http/modules/ngx_http_fastcgi_module.c:1055: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:3073: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:3329: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:3487: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:3592:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_fastcgi_module.c:3604: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:3649:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_fastcgi_module.c:3658: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:3707: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:659:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) le.ip) {
                 ^
src/http/modules/ngx_http_scgi_module.c:661: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:664: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:667: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:668: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:778:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) le.ip) {
                 ^
src/http/modules/ngx_http_scgi_module.c:780: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:783: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:786: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:787: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:794:25: warning: cast increases required alignment of target type [-Wcast-align]
                 while (*(uintptr_t *) e.ip) {
                         ^
src/http/modules/ngx_http_scgi_module.c:795: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:808: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:814:21: warning: cast increases required alignment of target type [-Wcast-align]
             while (*(uintptr_t *) e.ip) {
                     ^
src/http/modules/ngx_http_uwsgi_module.c: In function 'ngx_http_uwsgi_create_request':
src/http/modules/ngx_http_uwsgi_module.c:846:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) le.ip) {
                 ^
src/http/modules/ngx_http_uwsgi_module.c:848: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:851: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:854: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:855: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:815: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:976:17: warning: cast increases required alignment of target type [-Wcast-align]
         while (*(uintptr_t *) le.ip) {
                 ^
src/http/modules/ngx_http_uwsgi_module.c:978: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:981: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:984: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:985: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:992:25: warning: cast increases required alignment of target type [-Wcast-align]
                 while (*(uintptr_t *) e.ip) {
                         ^
src/http/modules/ngx_http_uwsgi_module.c:993: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:1006: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:1012:21: warning: cast increases required alignment of target type [-Wcast-align]
             while (*(uintptr_t *) e.ip) {
                     ^
src/http/modules/ngx_http_uwsgi_module.c:1013: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:1511:15: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hash.name = "scgi_hide_headers_hash";
               ^
src/http/modules/ngx_http_uwsgi_module.c: In function 'ngx_http_uwsgi_merge_loc_conf':
src/http/modules/ngx_http_uwsgi_module.c:1765:15: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     hash.name = "uwsgi_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:1760: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:1780: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:1838: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_init_params':
src/http/modules/ngx_http_uwsgi_module.c:2022: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_scgi_module.c:1850:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is incompatible with \"scgi_cache\"";
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/modules/ngx_http_uwsgi_module.c:2043: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:2124:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_uwsgi_module.c:2137:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is incompatible with \"uwsgi_cache\"";
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/modules/ngx_http_scgi_module.c: In function 'ngx_http_scgi_cache':
src/http/modules/ngx_http_scgi_module.c:1895: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_cache':
src/http/modules/ngx_http_uwsgi_module.c:2183:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
src/http/modules/ngx_http_scgi_module.c:1904:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is incompatible with \"scgi_store\"";
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
src/http/modules/ngx_http_uwsgi_module.c:2192: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:2241: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_cache_key':
src/http/modules/ngx_http_scgi_module.c:1953: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:2270:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_empty_gif_module.o \
	src/http/modules/ngx_http_empty_gif_module.c
src/http/modules/ngx_http_memcached_module.c: In function 'ngx_http_memcached_create_request':
src/http/modules/ngx_http_memcached_module.c:280:19: warning: cast from function call of type 'uintptr_t {aka unsigned int}' to non-matching type 'u_char * {aka unsigned char *}' [-Wbad-function-cast]
         b->last = (u_char *) ngx_escape_uri(b->last, vv->data, vv->len,
                   ^
src/http/modules/ngx_http_memcached_module.c: In function 'ngx_http_memcached_pass':
src/http/modules/ngx_http_memcached_module.c:693:16: warning: return discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
         return "is duplicate";
                ^~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_upstream_hash_module.o \
	src/http/modules/ngx_http_upstream_hash_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_upstream_least_conn_module.o \
	src/http/modules/ngx_http_upstream_least_conn_module.c
src/http/modules/ngx_http_upstream_ip_hash_module.c: In function 'ngx_http_upstream_init_ip_hash_peer':
src/http/modules/ngx_http_upstream_ip_hash_module.c:122:15: warning: cast increases required alignment of target type [-Wcast-align]
         sin = (struct sockaddr_in *) r->connection->sockaddr;
               ^
src/http/modules/ngx_http_upstream_ip_hash_module.c:129:16: warning: cast increases required alignment of target type [-Wcast-align]
         sin6 = (struct sockaddr_in6 *) r->connection->sockaddr;
                ^
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/src/http/modules/ngx_http_upstream_keepalive_module.o \
	src/http/modules/ngx_http_upstream_keepalive_module.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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
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";
                ^~~~~~~~~~~~~~
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\"  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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
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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\"  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -I src/http -I src/http/modules -I src/http/v2 -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src \
	-o objs/addon/src/ndk.o \
	/<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/src/ndk.c
cc -c -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\"  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\"  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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
/<<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:224: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:229:28: 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:547: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:1158:12: warning: assignment discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
     status = "must be one of 'none', 'emergency', 'alert', "
            ^
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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\"  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\"  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\"  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\"  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\"  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\"  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\"  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\"  -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I objs/addon/ndk -I /<<PKGBUILDDIR>>/vendor/mruby-source/src -I /<<PKGBUILDDIR>>/vendor/mruby-source/include -I -I/usr/local/include -I objs -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings   -Wdate-time -D_FORTIFY_SOURCE=2   -I/<<PKGBUILDDIR>>/include -DNGX_HTTP_GROONGA_LOG_PATH=\""/var/log/groonga/httpd/groonga.log"\" -DNGX_HTTP_GROONGA_QUERY_LOG_PATH=\""/var/log/groonga/httpd/groonga-query.log"\" -I src/core -I src/event -I src/event/modules -I src/os/unix -I /<<PKGBUILDDIR>>/vendor/ngx_mruby-source/dependence/ngx_devel_kit/objs -I 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 \
-fPIE -pie -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.5'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/vendor/nginx-1.11.5'
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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:777:14: note: in expansion of macro 'GRN_TIME_VALUE'
       self = GRN_TIME_VALUE(&end_time) - *load_start;
              ^~~~~~~~~~~~~~
groonga_benchmark.c: In function 'do_command':
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1458: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437:24: note: in expansion of macro 'GRN_INT64_VALUE'
 #define GRN_TIME_VALUE GRN_INT64_VALUE
                        ^~~~~~~~~~~~~~~
groonga_benchmark.c:1066:50: note: in expansion of macro 'GRN_TIME_VALUE'
   job_elapsed_time = GRN_TIME_VALUE(&end_time) - GRN_TIME_VALUE(&grntest_jobs_start);
                                                  ^~~~~~~~~~~~~~
grnslap.c: In function 'msg_handler':
grnslap.c:161:16: warning: cast increases required alignment of target type [-Wcast-align]
   grn_msg *m = (grn_msg *)msg;
                ^
grnslap.c:162:19: warning: cast increases required alignment of target type [-Wcast-align]
   grn_com *com = ((grn_msg *)msg)->u.peer;
                   ^
groonga.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_benchmark.c: In function 'main':
../include/groonga/groonga.h:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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:1434:33: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_INT64_VALUE(obj) (*((long long int *)GRN_BULK_HEAD(obj)))
                                 ^
../include/groonga/groonga.h:1437: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 '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:1433: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:1435: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:1433: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:1435: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:1433: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);
           ^~~~~~~~
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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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
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:1433:34: warning: cast increases required alignment of target type [-Wcast-align]
 #define GRN_UINT32_VALUE(obj) (*((unsigned int *)GRN_BULK_HEAD(obj)))
                                  ^
groonga.c:2277:18: note: in expansion of macro 'GRN_UINT32_VALUE'
         expire = GRN_UINT32_VALUE(&uint32_buf);
                  ^~~~~~~~~~~~~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2281:11: note: in expansion of macro 'GRN_MSG_MBRES'
           GRN_MSG_MBRES({
           ^~~~~~~~~~~~~
groonga.c:1902:6: warning: cast increases required alignment of target type [-Wcast-align]
     ((grn_msg *)re)->header.qtype = header->qtype;\
      ^
groonga.c:2288:11: note: in expansion of macro 'GRN_MSG_MBRES'
           GRN_MSG_MBRES({
           ^~~~~~~~~~~~~
groonga.c:2292:14: warning: cast increases required alignment of target type [-Wcast-align]
             ((grn_msg *)re)->header.cas = GRN_UINT64_VALUE(&uint64_buf);
              ^
groonga.c:1903:5: note: in definition of macro 'GRN_MSG_MBRES'
     block\
     ^~~~~
../include/groonga/groonga.h:1435: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>>=. -fPIE -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 -fPIE -pie -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>>=. -fPIE -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 -fPIE -pie -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>>=. -fPIE -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 -fPIE -pie -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>>=. -fPIE -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 -fPIE -pie -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>>=. -fPIE -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 -fPIE -pie -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>>=. -fPIE -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 -fPIE -pie -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>>=. -fPIE -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 -fPIE -pie -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>>=. -fPIE -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 -fPIE -pie -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>>=. -fPIE -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 -fPIE -pie -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>>=. -fPIE -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 -fPIE -pie -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 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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -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 -fPIE -pie -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -avoid-version -module -no-undefined -fPIE -pie -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 table
make[3]: Entering directory '/<<PKGBUILDDIR>>/plugins/table'
make[4]: Entering directory '/<<PKGBUILDDIR>>/plugins/table'
make[4]: Nothing to be done for 'install-exec-am'.
 /bin/mkdir -p '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/table'
 /bin/bash ../../libtool   --mode=install /usr/bin/install -c   table.la '/<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/table'
libtool: warning: relinking 'table.la'
libtool: install: (cd /<<PKGBUILDDIR>>/plugins/table; /bin/bash "/<<PKGBUILDDIR>>/libtool"  --tag CC --mode=relink gcc -I../../vendor/mruby-source/include -g -O2 -fdebug-prefix-map=/<<PKGBUILDDIR>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -avoid-version -module -no-undefined -fPIE -pie -Wl,-z,relro -Wl,-z,now -o table.la -rpath /usr/lib/arm-linux-gnueabihf/groonga/plugins/table table.lo ../../lib/libgroonga.la -lmsgpackc -inst-prefix-dir /<<PKGBUILDDIR>>/debian/tmp)
libtool: relink: gcc -shared  -fPIC -DPIC  .libs/table.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,table.so -o .libs/table.so
libtool: install: /usr/bin/install -c .libs/table.soT /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/table/table.so
libtool: install: /usr/bin/install -c .libs/table.lai /<<PKGBUILDDIR>>/debian/tmp/usr/lib/arm-linux-gnueabihf/groonga/plugins/table/table.la
libtool: warning: remember to run 'libtool --finish /usr/lib/arm-linux-gnueabihf/groonga/plugins/table'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/plugins/table'
make[3]: Leaving directory '/<<PKGBUILDDIR>>/plugins/table'
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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -avoid-version -module -no-undefined -fPIE -pie -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -avoid-version -module -no-undefined -fPIE -pie -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -avoid-version -module -no-undefined -fPIE -pie -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -avoid-version -module -no-undefined -fPIE -pie -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -avoid-version -module -no-undefined -fPIE -pie -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -avoid-version -module -no-undefined -fPIE -pie -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>>=. -fPIE -fstack-protector-strong -Wformat -Werror=format-security -Wall -Wextra -Wno-unused-but-set-variable -Wno-unused-parameter -Wno-sign-compare -Wno-pointer-sign -Wno-missing-field-initializers -Wformat -Wstrict-aliasing=2 -Wdisabled-optimization -Wfloat-equal -Wpointer-arith -Wbad-function-cast -Wcast-align -Wwrite-strings -avoid-version -module -no-undefined -fPIE -pie -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.5 && make build)
make[4]: Entering directory '/<<PKGBUILDDIR>>/vendor/nginx-1.11.5'
make -f objs/Makefile
make[5]: Entering directory '/<<PKGBUILDDIR>>/vendor/nginx-1.11.5'
make[5]: Nothing to be done for 'build'.
make[5]: Leaving directory '/<<PKGBUILDDIR>>/vendor/nginx-1.11.5'
make[4]: Leaving directory '/<<PKGBUILDDIR>>/vendor/nginx-1.11.5'
make[4]: Entering directory '/<<PKGBUILDDIR>>/src/httpd'
(cd ../../vendor/nginx-1.11.5 && make install)
make[4]: Nothing to be done for 'install-data-am'.
make[5]: Entering directory '/<<PKGBUILDDIR>>/vendor/nginx-1.11.5'
make -f objs/Makefile install
make[6]: Entering directory '/<<PKGBUILDDIR>>/vendor/nginx-1.11.5'
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.5'
make[5]: Leaving directory '/<<PKGBUILDDIR>>/vendor/nginx-1.11.5'
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/groonga/plugins/table/table.so debian/libgroonga0/usr/lib/arm-linux-gnueabihf/libgroonga.so.0.0.0 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-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-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-bin/usr/bin/grndb debian/groonga-bin/usr/bin/groonga-benchmark debian/groonga-bin/usr/bin/groonga were not linked against libstdc++.so.6 (they use none of the library's symbols)
dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/groonga-bin/usr/bin/grndb debian/groonga-bin/usr/bin/groonga-benchmark debian/groonga-bin/usr/bin/groonga were not linked against libz.so.1 (they use none of the library's symbols)
dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/groonga-bin/usr/bin/grndb debian/groonga-bin/usr/bin/groonga-benchmark debian/groonga-bin/usr/bin/groonga were not linked against libmsgpackc.so.2 (they use none of the library's symbols)
dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/groonga-bin/usr/bin/grndb debian/groonga-bin/usr/bin/groonga-benchmark debian/groonga-bin/usr/bin/groonga were not linked against libdl.so.2 (they use none of the library's symbols)
dpkg-shlibdeps: warning: package could avoid a useless dependency if debian/groonga-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 'groonga-tokenizer-mecab-dbgsym' in '../groonga-tokenizer-mecab-dbgsym_6.1.0-2_armhf.deb'.
dpkg-deb: building package 'libgroonga0-dbgsym' in '../libgroonga0-dbgsym_6.1.0-2_armhf.deb'.
dpkg-deb: building package 'libgroonga-dev' in '../libgroonga-dev_6.1.0-2_armhf.deb'.
dpkg-deb: building package 'groonga' in '../groonga_6.1.0-2_armhf.deb'.
dpkg-deb: building package 'groonga-token-filter-stem-dbgsym' in '../groonga-token-filter-stem-dbgsym_6.1.0-2_armhf.deb'.
dpkg-deb: building package 'groonga-tokenizer-mecab' in '../groonga-tokenizer-mecab_6.1.0-2_armhf.deb'.
dpkg-deb: building package 'groonga-token-filter-stem' in '../groonga-token-filter-stem_6.1.0-2_armhf.deb'.
dpkg-deb: building package 'groonga-plugin-suggest-dbgsym' in '../groonga-plugin-suggest-dbgsym_6.1.0-2_armhf.deb'.
dpkg-deb: building package 'groonga-bin-dbgsym' in '../groonga-bin-dbgsym_6.1.0-2_armhf.deb'.
dpkg-deb: building package 'groonga-httpd-dbgsym' in '../groonga-httpd-dbgsym_6.1.0-2_armhf.deb'.
dpkg-deb: building package 'groonga-plugin-suggest' in '../groonga-plugin-suggest_6.1.0-2_armhf.deb'.
dpkg-deb: building package 'groonga-bin' in '../groonga-bin_6.1.0-2_armhf.deb'.
dpkg-deb: building package 'groonga-httpd' in '../groonga-httpd_6.1.0-2_armhf.deb'.
dpkg-deb: building package 'libgroonga0' in '../libgroonga0_6.1.0-2_armhf.deb'.
 dpkg-genchanges --build=any -mRaspbian wandboard test autobuilder <root@raspbian.org> >../groonga_6.1.0-2_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.0
dpkg-buildpackage: info: binary-only upload (no source included)
--------------------------------------------------------------------------------
Build finished at 2016-11-06T07:30:10Z

Finished
--------

I: Built successfully

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


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


groonga_6.1.0-2_armhf.changes:
------------------------------

Format: 1.8
Date: Sun, 30 Oct 2016 07:31:31 +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.0-2
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.0-2) unstable; urgency=medium
 .
   * debian/patches/fix-nginx-FTBFS-on-kfreebsd.patch
     - Add patch to fix FTBFS on kFreeBSD.
   * debian/copyright
     - Add copyright about bundled ngx-mruby.
Checksums-Sha1:
 2e07282c31dcdecb6438861de370166ee086fd75 139256 groonga-bin-dbgsym_6.1.0-2_armhf.deb
 b09c2041df4bddc609d33274c03c993c1cd852ce 255580 groonga-bin_6.1.0-2_armhf.deb
 1cda141674387e6c1900ebe3fda4236a81391903 3632906 groonga-httpd-dbgsym_6.1.0-2_armhf.deb
 c4ef2c63936bcd4963b16ad9e0dd699e33971a8b 329378 groonga-httpd_6.1.0-2_armhf.deb
 5299ca86f2acb6a8ec25f6b7f37eb7561aa29063 120900 groonga-plugin-suggest-dbgsym_6.1.0-2_armhf.deb
 fb1f7e2ba691a6b62dc6bf45c4c665f9ec5134f5 35656 groonga-plugin-suggest_6.1.0-2_armhf.deb
 223fdebf6da9fa57ec3ac11102933dc63ecb9bef 9886 groonga-token-filter-stem-dbgsym_6.1.0-2_armhf.deb
 e4a031e47737f137a4358e90acb92e4cd4266c8e 10702 groonga-token-filter-stem_6.1.0-2_armhf.deb
 40bb92e301103a8bbd6bc897fd9b23d7c4a7d769 13806 groonga-tokenizer-mecab-dbgsym_6.1.0-2_armhf.deb
 292300fa993fa9cfdc6978a56c8e0bf02754590f 12250 groonga-tokenizer-mecab_6.1.0-2_armhf.deb
 ac09b07d1e331bb4c58c782b3f688500ec742e91 7478 groonga_6.1.0-2_armhf.deb
 809c8ed239ee4d22c7a647ab1a14fb39bcca775d 31010 libgroonga-dev_6.1.0-2_armhf.deb
 2ede2ac5e7d49651263262f149fb2a65bd3590c3 3786950 libgroonga0-dbgsym_6.1.0-2_armhf.deb
 c36c7a3bf8ba60772f73c4cb8c41f8d8ecdb8dcf 1266378 libgroonga0_6.1.0-2_armhf.deb
Checksums-Sha256:
 74ca60ba5c494c778a23db9d2182d07cc32fed53c5f02c80c2fcddb3b1ab85e7 139256 groonga-bin-dbgsym_6.1.0-2_armhf.deb
 7f22a3ab8e564b11e7989aa36675dba387f01c634150d7de15c392d1aa08feff 255580 groonga-bin_6.1.0-2_armhf.deb
 b40f2e2fc05123ce87d6bd8e21ef326f590caf2edec79842bb8e2c2fef23621b 3632906 groonga-httpd-dbgsym_6.1.0-2_armhf.deb
 5bdc9580ae097d56fd5795b85d241ed33073851371ca982b42f11280dde2b6e8 329378 groonga-httpd_6.1.0-2_armhf.deb
 9cd13b5d6332c94a5982423189aa6de150238f7047b036eb465220f14cdf2c4c 120900 groonga-plugin-suggest-dbgsym_6.1.0-2_armhf.deb
 56b469db6ca2f69ac110d0ed08fdbf0cd86d20289331db823621a262aeb842a3 35656 groonga-plugin-suggest_6.1.0-2_armhf.deb
 4ca0b6bc2c1f8caf30a4b5f3b1439e0b93bba638cc419cab2cec6ee6cc58fd89 9886 groonga-token-filter-stem-dbgsym_6.1.0-2_armhf.deb
 04169f3fa8cc4f7e6bfb95cb510534a5a569017a552c922b0293b8b05e7e6a1b 10702 groonga-token-filter-stem_6.1.0-2_armhf.deb
 d77ab1d36a7ed111a4cbc27534f836401b646c7a17ebfbb2d68821c742541cba 13806 groonga-tokenizer-mecab-dbgsym_6.1.0-2_armhf.deb
 d0a4f36b928b164a23fe01d1b81208f9ddcaa94a4108b4273b996ad8abddb749 12250 groonga-tokenizer-mecab_6.1.0-2_armhf.deb
 2707f2ba20314f9f45d730f8b57eec15093cd6e01abd9b03a80364fe4d7fd35a 7478 groonga_6.1.0-2_armhf.deb
 24a2fb3d549ce92c1192c1ed9f13e05442abd6d4c1b224e00bdf7d8cd8812fcf 31010 libgroonga-dev_6.1.0-2_armhf.deb
 e9fe42f49baba0521ab345bd4f0ae497497c8f963463661eba17d354c3982953 3786950 libgroonga0-dbgsym_6.1.0-2_armhf.deb
 9b7d49d0cd230774c93b5969ab56c811be1fea2e06a4517e4a124e9dc68bc583 1266378 libgroonga0_6.1.0-2_armhf.deb
Files:
 95f7b34096a8274a7cff2d101a5f8883 139256 debug extra groonga-bin-dbgsym_6.1.0-2_armhf.deb
 4d1685ad9d8bb9f200807134219f060c 255580 database optional groonga-bin_6.1.0-2_armhf.deb
 d116f3d81eccd63f78e69375d1260276 3632906 debug extra groonga-httpd-dbgsym_6.1.0-2_armhf.deb
 7d9637064acd10c58295ee3b9f3fc526 329378 database optional groonga-httpd_6.1.0-2_armhf.deb
 1279285b07a133820bf32e9f04669f21 120900 debug extra groonga-plugin-suggest-dbgsym_6.1.0-2_armhf.deb
 b3b82c5f1c4aabfddbda2a26977fcc5f 35656 libs optional groonga-plugin-suggest_6.1.0-2_armhf.deb
 17c5da934f578b440eb23dbcfb0cb22f 9886 debug extra groonga-token-filter-stem-dbgsym_6.1.0-2_armhf.deb
 659f37c441648f42c10b5e4422a86f80 10702 libs optional groonga-token-filter-stem_6.1.0-2_armhf.deb
 8b838d300d8800691c2bd14619d7d7c8 13806 debug extra groonga-tokenizer-mecab-dbgsym_6.1.0-2_armhf.deb
 86bc571ddd9adbc1087ded991d9e39cd 12250 libs optional groonga-tokenizer-mecab_6.1.0-2_armhf.deb
 80604651d35ad61ee7668ea719870ba4 7478 database optional groonga_6.1.0-2_armhf.deb
 3aa6528c00fed41600d9ca1d95304c4d 31010 libdevel optional libgroonga-dev_6.1.0-2_armhf.deb
 22630b3734f8471c1fb64c1f96a8652d 3786950 debug extra libgroonga0-dbgsym_6.1.0-2_armhf.deb
 60c575976ca35c4ca402f64367005cb6 1266378 libs optional libgroonga0_6.1.0-2_armhf.deb

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


groonga-bin-dbgsym_6.1.0-2_armhf.deb
------------------------------------

 new debian package, version 2.0.
 size 139256 bytes: control archive=571 bytes.
     457 bytes,    13 lines      control              
     318 bytes,     3 lines      md5sums              
 Package: groonga-bin-dbgsym
 Source: groonga
 Version: 6.1.0-2
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 173
 Depends: groonga-bin (= 6.1.0-2)
 Section: debug
 Priority: extra
 Homepage: http://groonga.org/
 Description: Debug symbols for groonga-bin
 Auto-Built-Package: debug-symbols
 Build-Ids: 4e6744a0fb709add27501d91c0d0f9bd59164cf7 87e453888c92f8328b549e586bae0b9e22a926a8 b74f590e9a456919dffaac44b3d5dfcafc82750e

drwxr-xr-x root/root         0 2016-10-29 22:31 ./
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/debug/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/debug/.build-id/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/debug/.build-id/4e/
-rw-r--r-- root/root     19396 2016-10-29 22:31 ./usr/lib/debug/.build-id/4e/6744a0fb709add27501d91c0d0f9bd59164cf7.debug
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/debug/.build-id/87/
-rw-r--r-- root/root     58364 2016-10-29 22:31 ./usr/lib/debug/.build-id/87/e453888c92f8328b549e586bae0b9e22a926a8.debug
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/debug/.build-id/b7/
-rw-r--r-- root/root     86564 2016-10-29 22:31 ./usr/lib/debug/.build-id/b7/4f590e9a456919dffaac44b3d5dfcafc82750e.debug
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/doc/
lrwxrwxrwx root/root         0 2016-10-29 22:31 ./usr/share/doc/groonga-bin-dbgsym -> groonga-bin


groonga-bin_6.1.0-2_armhf.deb
-----------------------------

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


groonga-httpd-dbgsym_6.1.0-2_armhf.deb
--------------------------------------

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

drwxr-xr-x root/root         0 2016-10-29 22:31 ./
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/debug/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/debug/.build-id/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/debug/.build-id/ce/
-rw-r--r-- root/root   3848728 2016-10-29 22:31 ./usr/lib/debug/.build-id/ce/21c3a1391d80267098fa807201b8e0f2b877f5.debug
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/doc/
lrwxrwxrwx root/root         0 2016-10-29 22:31 ./usr/share/doc/groonga-httpd-dbgsym -> groonga-httpd


groonga-httpd_6.1.0-2_armhf.deb
-------------------------------

 new debian package, version 2.0.
 size 329378 bytes: control archive=1942 bytes.
     667 bytes,    20 lines      conffiles            
     781 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.0-2
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 933
 Depends: init-system-helpers (>= 1.18~), libc6 (>= 2.10), libgroonga0, libpcre3, libssl1.0.2 (>= 1.0.2d), zlib1g (>= 1:1.1.4), curl, groonga-server-common (= 6.1.0-2), 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 2016-10-29 22:31 ./
drwxr-xr-x root/root         0 2016-10-29 22:31 ./etc/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./etc/default/
-rw-r--r-- root/root       738 2016-10-29 04:33 ./etc/default/groonga-httpd
drwxr-xr-x root/root         0 2016-10-29 22:31 ./etc/groonga/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./etc/groonga/httpd/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./etc/groonga/httpd/client_body_temp/
-rw-r--r-- root/root      1077 2016-10-29 22:31 ./etc/groonga/httpd/fastcgi.conf
-rw-r--r-- root/root      1077 2016-10-29 22:31 ./etc/groonga/httpd/fastcgi.conf.default
-rw-r--r-- root/root      1007 2016-10-29 22:31 ./etc/groonga/httpd/fastcgi_params
-rw-r--r-- root/root      1007 2016-10-29 22:31 ./etc/groonga/httpd/fastcgi_params.default
drwxr-xr-x root/root         0 2016-10-29 22:31 ./etc/groonga/httpd/fastcgi_temp/
-rw-r--r-- root/root      1864 2016-10-29 22:31 ./etc/groonga/httpd/groonga-httpd.conf
drwxr-xr-x root/root         0 2016-10-29 22:31 ./etc/groonga/httpd/html/
-rw-r--r-- root/root       537 2016-10-29 22:31 ./etc/groonga/httpd/html/50x.html
-rw-r--r-- root/root       612 2016-10-29 22:31 ./etc/groonga/httpd/html/index.html
-rw-r--r-- root/root      2837 2016-10-29 22:31 ./etc/groonga/httpd/koi-utf
-rw-r--r-- root/root      2223 2016-10-29 22:31 ./etc/groonga/httpd/koi-win
drwxr-xr-x root/root         0 2016-10-29 22:31 ./etc/groonga/httpd/logs/
-rw-r--r-- root/root      3957 2016-10-29 22:31 ./etc/groonga/httpd/mime.types
-rw-r--r-- root/root      3957 2016-10-29 22:31 ./etc/groonga/httpd/mime.types.default
-rw-r--r-- root/root      2656 2016-10-29 22:31 ./etc/groonga/httpd/nginx.conf.default
drwxr-xr-x root/root         0 2016-10-29 22:31 ./etc/groonga/httpd/proxy_temp/
-rw-r--r-- root/root       636 2016-10-29 22:31 ./etc/groonga/httpd/scgi_params
-rw-r--r-- root/root       636 2016-10-29 22:31 ./etc/groonga/httpd/scgi_params.default
drwxr-xr-x root/root         0 2016-10-29 22:31 ./etc/groonga/httpd/scgi_temp/
-rw-r--r-- root/root       664 2016-10-29 22:31 ./etc/groonga/httpd/uwsgi_params
-rw-r--r-- root/root       664 2016-10-29 22:31 ./etc/groonga/httpd/uwsgi_params.default
drwxr-xr-x root/root         0 2016-10-29 22:31 ./etc/groonga/httpd/uwsgi_temp/
-rw-r--r-- root/root      3610 2016-10-29 22:31 ./etc/groonga/httpd/win-utf
drwxr-xr-x root/root         0 2016-10-29 22:31 ./etc/init.d/
-rwxr-xr-x root/root      4526 2016-10-29 04:33 ./etc/init.d/groonga-httpd
drwxr-xr-x root/root         0 2016-10-29 22:31 ./etc/logrotate.d/
-rw-r--r-- root/root       394 2016-10-29 04:33 ./etc/logrotate.d/groonga-httpd
drwxr-xr-x root/root         0 2016-10-29 22:31 ./lib/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./lib/systemd/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./lib/systemd/system/
-rw-r--r-- root/root       437 2016-10-29 04:33 ./lib/systemd/system/groonga-httpd.service
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/sbin/
-rwxr-xr-x root/root    856092 2016-10-29 22:31 ./usr/sbin/groonga-httpd
-rwxr-xr-x root/root      2555 2016-10-29 22:31 ./usr/sbin/groonga-httpd-restart
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/doc/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/doc/groonga-httpd/
-rw-r--r-- root/root      3228 2016-10-29 22:31 ./usr/share/doc/groonga-httpd/changelog.Debian.gz
-rw-r--r-- root/root     10156 2016-10-29 13:11 ./usr/share/doc/groonga-httpd/copyright
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/lintian/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/lintian/overrides/
-rw-r--r-- root/root       130 2016-10-29 04:33 ./usr/share/lintian/overrides/groonga-httpd
drwxr-xr-x root/root         0 2016-10-29 22:31 ./var/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./var/log/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./var/log/groonga/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./var/log/groonga/httpd/


groonga-plugin-suggest-dbgsym_6.1.0-2_armhf.deb
-----------------------------------------------

 new debian package, version 2.0.
 size 120900 bytes: control archive=636 bytes.
     531 bytes,    13 lines      control              
     424 bytes,     4 lines      md5sums              
 Package: groonga-plugin-suggest-dbgsym
 Source: groonga
 Version: 6.1.0-2
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 158
 Depends: groonga-plugin-suggest (= 6.1.0-2)
 Section: debug
 Priority: extra
 Homepage: http://groonga.org/
 Description: Debug symbols for groonga-plugin-suggest
 Auto-Built-Package: debug-symbols
 Build-Ids: 090523e952fedc0b30417d5d14aea47e78220978 44fd8a6ad5a67e71d07bd7179073483a66100998 73a8569d208745f35149d8f1b574150464b49405 9337ca79eec653d7883d80c6e8426e8317188f0e

drwxr-xr-x root/root         0 2016-10-29 22:31 ./
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/debug/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/debug/.build-id/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/debug/.build-id/09/
-rw-r--r-- root/root     33992 2016-10-29 22:31 ./usr/lib/debug/.build-id/09/0523e952fedc0b30417d5d14aea47e78220978.debug
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/debug/.build-id/44/
-rw-r--r-- root/root     15064 2016-10-29 22:31 ./usr/lib/debug/.build-id/44/fd8a6ad5a67e71d07bd7179073483a66100998.debug
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/debug/.build-id/73/
-rw-r--r-- root/root     43752 2016-10-29 22:31 ./usr/lib/debug/.build-id/73/a8569d208745f35149d8f1b574150464b49405.debug
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/debug/.build-id/93/
-rw-r--r-- root/root     53668 2016-10-29 22:31 ./usr/lib/debug/.build-id/93/37ca79eec653d7883d80c6e8426e8317188f0e.debug
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/doc/
lrwxrwxrwx root/root         0 2016-10-29 22:31 ./usr/share/doc/groonga-plugin-suggest-dbgsym -> groonga-plugin-suggest


groonga-plugin-suggest_6.1.0-2_armhf.deb
----------------------------------------

 new debian package, version 2.0.
 size 35656 bytes: control archive=860 bytes.
     743 bytes,    17 lines      control              
     557 bytes,     7 lines      md5sums              
 Package: groonga-plugin-suggest
 Source: groonga
 Version: 6.1.0-2
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 133
 Depends: libc6 (>= 2.4), libevent-2.0-5 (>= 2.0.10-stable), libgcc1 (>= 1:3.5), libgroonga0 (= 6.1.0-2), 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 2016-10-29 22:31 ./
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/bin/
-rwxr-xr-x root/root     13812 2016-10-29 22:31 ./usr/bin/groonga-suggest-create-dataset
-rwxr-xr-x root/root     22216 2016-10-29 22:31 ./usr/bin/groonga-suggest-httpd
-rwxr-xr-x root/root     38512 2016-10-29 22:31 ./usr/bin/groonga-suggest-learner
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/suggest/
-rw-r--r-- root/root     30048 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/suggest/suggest.so
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/doc/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/doc/groonga-plugin-suggest/
-rw-r--r-- root/root      3228 2016-10-29 22:31 ./usr/share/doc/groonga-plugin-suggest/changelog.Debian.gz
-rw-r--r-- root/root     10156 2016-10-29 13:11 ./usr/share/doc/groonga-plugin-suggest/copyright
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/lintian/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/lintian/overrides/
-rw-r--r-- root/root       242 2016-10-29 04:33 ./usr/share/lintian/overrides/groonga-plugin-suggest


groonga-token-filter-stem-dbgsym_6.1.0-2_armhf.deb
--------------------------------------------------

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

drwxr-xr-x root/root         0 2016-10-29 22:31 ./
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/debug/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/debug/.build-id/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/debug/.build-id/47/
-rw-r--r-- root/root     12596 2016-10-29 22:31 ./usr/lib/debug/.build-id/47/e62f0963ee635826d2bd1ffd34dfedf7bc47da.debug
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/doc/
lrwxrwxrwx root/root         0 2016-10-29 22:31 ./usr/share/doc/groonga-token-filter-stem-dbgsym -> groonga-token-filter-stem


groonga-token-filter-stem_6.1.0-2_armhf.deb
-------------------------------------------

 new debian package, version 2.0.
 size 10702 bytes: control archive=701 bytes.
     655 bytes,    17 lines      control              
     278 bytes,     3 lines      md5sums              
 Package: groonga-token-filter-stem
 Source: groonga
 Version: 6.1.0-2
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 35
 Depends: libc6 (>= 2.4), libgroonga0 (= 6.1.0-2), 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 2016-10-29 22:31 ./
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters/
-rw-r--r-- root/root      9516 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters/stem.so
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/doc/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/doc/groonga-token-filter-stem/
-rw-r--r-- root/root      3228 2016-10-29 22:31 ./usr/share/doc/groonga-token-filter-stem/changelog.Debian.gz
-rw-r--r-- root/root     10156 2016-10-29 13:11 ./usr/share/doc/groonga-token-filter-stem/copyright


groonga-tokenizer-mecab-dbgsym_6.1.0-2_armhf.deb
------------------------------------------------

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

drwxr-xr-x root/root         0 2016-10-29 22:31 ./
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/debug/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/debug/.build-id/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/debug/.build-id/8c/
-rw-r--r-- root/root     17348 2016-10-29 22:31 ./usr/lib/debug/.build-id/8c/49ccfa8ec8e985eeff349ae91405337f0702cf.debug
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/doc/
lrwxrwxrwx root/root         0 2016-10-29 22:31 ./usr/share/doc/groonga-tokenizer-mecab-dbgsym -> groonga-tokenizer-mecab


groonga-tokenizer-mecab_6.1.0-2_armhf.deb
-----------------------------------------

 new debian package, version 2.0.
 size 12250 bytes: control archive=730 bytes.
     664 bytes,    17 lines      control              
     358 bytes,     4 lines      md5sums              
 Package: groonga-tokenizer-mecab
 Source: groonga
 Version: 6.1.0-2
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 42
 Depends: libc6 (>= 2.4), libgroonga0 (= 6.1.0-2), 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 2016-10-29 22:31 ./
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/tokenizers/
-rw-r--r-- root/root     13620 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/tokenizers/mecab.so
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/doc/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/doc/groonga-tokenizer-mecab/
-rw-r--r-- root/root      3228 2016-10-29 22:31 ./usr/share/doc/groonga-tokenizer-mecab/changelog.Debian.gz
-rw-r--r-- root/root     10156 2016-10-29 13:11 ./usr/share/doc/groonga-tokenizer-mecab/copyright
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/lintian/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/lintian/overrides/
-rw-r--r-- root/root       359 2016-10-29 04:33 ./usr/share/lintian/overrides/groonga-tokenizer-mecab


groonga_6.1.0-2_armhf.deb
-------------------------

 new debian package, version 2.0.
 size 7478 bytes: control archive=569 bytes.
     569 bytes,    14 lines      control              
     142 bytes,     2 lines      md5sums              
 Package: groonga
 Version: 6.1.0-2
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 20
 Depends: groonga-bin (= 6.1.0-2), groonga-plugin-suggest (= 6.1.0-2), groonga-doc (= 6.1.0-2)
 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 2016-10-29 22:31 ./
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/doc/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/doc/groonga/
-rw-r--r-- root/root      3228 2016-10-29 22:31 ./usr/share/doc/groonga/changelog.Debian.gz
-rw-r--r-- root/root     10156 2016-10-29 13:11 ./usr/share/doc/groonga/copyright


libgroonga-dev_6.1.0-2_armhf.deb
--------------------------------

 new debian package, version 2.0.
 size 31010 bytes: control archive=1713 bytes.
     618 bytes,    18 lines      control              
    2956 bytes,    41 lines      md5sums              
 Package: libgroonga-dev
 Source: groonga
 Version: 6.1.0-2
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 219
 Depends: pkg-config, libgroonga0 (= 6.1.0-2)
 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 2016-10-29 22:31 ./
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/include/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/include/groonga/
-rw-r--r-- root/root      1608 2016-10-29 22:31 ./usr/include/groonga/groonga.h
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/include/groonga/groonga/
-rw-r--r-- root/root      3972 2016-10-29 22:31 ./usr/include/groonga/groonga/array.h
-rw-r--r-- root/root       928 2016-10-29 22:31 ./usr/include/groonga/groonga/column.h
-rw-r--r-- root/root      3496 2016-10-29 22:31 ./usr/include/groonga/groonga/command.h
-rw-r--r-- root/root      2632 2016-10-29 22:31 ./usr/include/groonga/groonga/config.h
-rw-r--r-- root/root      4250 2016-10-29 22:31 ./usr/include/groonga/groonga/dat.h
-rw-r--r-- root/root      2821 2016-10-29 22:31 ./usr/include/groonga/groonga/db.h
-rw-r--r-- root/root      1217 2016-10-29 22:31 ./usr/include/groonga/groonga/dump.h
-rw-r--r-- root/root       894 2016-10-29 22:31 ./usr/include/groonga/groonga/error.h
-rw-r--r-- root/root      5645 2016-10-29 22:31 ./usr/include/groonga/groonga/expr.h
-rw-r--r-- root/root      1270 2016-10-29 22:31 ./usr/include/groonga/groonga/file_reader.h
-rw-r--r-- root/root      1207 2016-10-29 22:31 ./usr/include/groonga/groonga/geo.h
-rw-r--r-- root/root     61403 2016-10-29 22:31 ./usr/include/groonga/groonga/groonga.h
-rw-r--r-- root/root      4396 2016-10-29 22:31 ./usr/include/groonga/groonga/hash.h
-rw-r--r-- root/root      1004 2016-10-29 22:31 ./usr/include/groonga/groonga/id.h
-rw-r--r-- root/root      2514 2016-10-29 22:31 ./usr/include/groonga/groonga/ii.h
-rw-r--r-- root/root       908 2016-10-29 22:31 ./usr/include/groonga/groonga/nfkc.h
-rw-r--r-- root/root      2125 2016-10-29 22:31 ./usr/include/groonga/groonga/normalizer.h
-rw-r--r-- root/root      3071 2016-10-29 22:31 ./usr/include/groonga/groonga/obj.h
-rw-r--r-- root/root      2109 2016-10-29 22:31 ./usr/include/groonga/groonga/operator.h
-rw-r--r-- root/root      5130 2016-10-29 22:31 ./usr/include/groonga/groonga/output.h
-rw-r--r-- root/root      4714 2016-10-29 22:31 ./usr/include/groonga/groonga/pat.h
-rw-r--r-- root/root      8261 2016-10-29 22:31 ./usr/include/groonga/groonga/plugin.h
-rw-r--r-- root/root      6377 2016-10-29 22:31 ./usr/include/groonga/groonga/portability.h
-rw-r--r-- root/root      1420 2016-10-29 22:31 ./usr/include/groonga/groonga/request_canceler.h
-rw-r--r-- root/root      1819 2016-10-29 22:31 ./usr/include/groonga/groonga/request_timer.h
-rw-r--r-- root/root      3842 2016-10-29 22:31 ./usr/include/groonga/groonga/scorer.h
-rw-r--r-- root/root      9893 2016-10-29 22:31 ./usr/include/groonga/groonga/table.h
-rw-r--r-- root/root      1380 2016-10-29 22:31 ./usr/include/groonga/groonga/thread.h
-rw-r--r-- root/root      2160 2016-10-29 22:31 ./usr/include/groonga/groonga/time.h
-rw-r--r-- root/root      3728 2016-10-29 22:31 ./usr/include/groonga/groonga/token.h
-rw-r--r-- root/root      2544 2016-10-29 22:31 ./usr/include/groonga/groonga/token_filter.h
-rw-r--r-- root/root     10279 2016-10-29 22:31 ./usr/include/groonga/groonga/tokenizer.h
-rw-r--r-- root/root      1477 2016-10-29 22:31 ./usr/include/groonga/groonga/type.h
-rw-r--r-- root/root      1499 2016-10-29 22:31 ./usr/include/groonga/groonga/util.h
-rw-r--r-- root/root      2511 2016-10-29 22:31 ./usr/include/groonga/groonga/window_function.h
-rw-r--r-- root/root       930 2016-10-29 22:31 ./usr/include/groonga/groonga/windows.h
-rw-r--r-- root/root       984 2016-10-29 22:31 ./usr/include/groonga/groonga/windows_event_logger.h
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/
lrwxrwxrwx root/root         0 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/libgroonga.so -> libgroonga.so.0.0.0
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/pkgconfig/
-rw-r--r-- root/root       589 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/pkgconfig/groonga.pc
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/doc/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/doc/libgroonga-dev/
-rw-r--r-- root/root      3228 2016-10-29 22:31 ./usr/share/doc/libgroonga-dev/changelog.Debian.gz
-rw-r--r-- root/root     10156 2016-10-29 13:11 ./usr/share/doc/libgroonga-dev/copyright


libgroonga0-dbgsym_6.1.0-2_armhf.deb
------------------------------------

 new debian package, version 2.0.
 size 3786950 bytes: control archive=857 bytes.
     680 bytes,    14 lines      control              
     848 bytes,     8 lines      md5sums              
 Package: libgroonga0-dbgsym
 Source: groonga
 Version: 6.1.0-2
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 4379
 Depends: libgroonga0 (= 6.1.0-2)
 Section: debug
 Priority: extra
 Multi-Arch: same
 Homepage: http://groonga.org/
 Description: Debug symbols for libgroonga0
 Auto-Built-Package: debug-symbols
 Build-Ids: 0858e341c043e3e051f2420e24fd11dae9ea459e 5162702ad63284064539a7dac698edd3e9cac09e 5348d452239a33975012a3d29013e08b63135b47 7390f2e4f4150157b841661985a296b04377588d 8ba4c952a837ef49692160584deba177da6be8dc a6d1163417dc8e73d2a8850d4585897c60fe5575 aa8f76f86329ab274575c5adff4c4f321ca83fce d4f903204dc23a96ea14745be4bd5ddf9eadd353

drwxr-xr-x root/root         0 2016-10-29 22:31 ./
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/debug/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/debug/.build-id/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/debug/.build-id/08/
-rw-r--r-- root/root   4352796 2016-10-29 22:31 ./usr/lib/debug/.build-id/08/58e341c043e3e051f2420e24fd11dae9ea459e.debug
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/debug/.build-id/51/
-rw-r--r-- root/root     10912 2016-10-29 22:31 ./usr/lib/debug/.build-id/51/62702ad63284064539a7dac698edd3e9cac09e.debug
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/debug/.build-id/53/
-rw-r--r-- root/root     42840 2016-10-29 22:31 ./usr/lib/debug/.build-id/53/48d452239a33975012a3d29013e08b63135b47.debug
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/debug/.build-id/73/
-rw-r--r-- root/root     11236 2016-10-29 22:31 ./usr/lib/debug/.build-id/73/90f2e4f4150157b841661985a296b04377588d.debug
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/debug/.build-id/8b/
-rw-r--r-- root/root     11080 2016-10-29 22:31 ./usr/lib/debug/.build-id/8b/a4c952a837ef49692160584deba177da6be8dc.debug
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/debug/.build-id/a6/
-rw-r--r-- root/root     11672 2016-10-29 22:31 ./usr/lib/debug/.build-id/a6/d1163417dc8e73d2a8850d4585897c60fe5575.debug
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/debug/.build-id/aa/
-rw-r--r-- root/root     10892 2016-10-29 22:31 ./usr/lib/debug/.build-id/aa/8f76f86329ab274575c5adff4c4f321ca83fce.debug
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/debug/.build-id/d4/
-rw-r--r-- root/root     12408 2016-10-29 22:31 ./usr/lib/debug/.build-id/d4/f903204dc23a96ea14745be4bd5ddf9eadd353.debug
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/doc/
lrwxrwxrwx root/root         0 2016-10-29 22:31 ./usr/share/doc/libgroonga0-dbgsym -> libgroonga0


libgroonga0_6.1.0-2_armhf.deb
-----------------------------

 new debian package, version 2.0.
 size 1266378 bytes: control archive=2926 bytes.
      26 bytes,     1 lines      conffiles            
     689 bytes,    18 lines      control              
    7256 bytes,    72 lines      md5sums              
      25 bytes,     1 lines      shlibs               
      60 bytes,     2 lines      triggers             
 Package: libgroonga0
 Source: groonga
 Version: 6.1.0-2
 Architecture: armhf
 Maintainer: Groonga Project <packages@groonga.org>
 Installed-Size: 5897
 Depends: libatomic1 (>= 4.8), libc6 (>= 2.17), libgcc1 (>= 1:3.5), liblz4-1 (>= 0.0~r114), libmsgpackc2 (>= 0.5.1), libstdc++6 (>= 5), 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 2016-10-29 22:31 ./
drwxr-xr-x root/root         0 2016-10-29 22:31 ./etc/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./etc/groonga/
-rw-r--r-- root/root       101 2016-10-29 22:31 ./etc/groonga/synonyms.tsv
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/
-rw-r--r-- root/root      9568 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/number.so
-rw-r--r-- root/root      9516 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/string.so
-rw-r--r-- root/root      9516 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/time.so
-rw-r--r-- root/root      9516 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/functions/vector.so
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/query_expanders/
-rw-r--r-- root/root      9516 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/query_expanders/tsv.so
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/ruby/
-rw-r--r-- root/root       896 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/ruby/eval.rb
-rw-r--r-- root/root       337 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding.rb
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/
-rw-r--r-- root/root      5384 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/logical_count.rb
-rw-r--r-- root/root      8430 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/logical_enumerator.rb
-rw-r--r-- root/root      1032 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/logical_parameters.rb
-rw-r--r-- root/root     22545 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/logical_range_filter.rb
-rw-r--r-- root/root     20035 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/logical_select.rb
-rw-r--r-- root/root       795 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/logical_shard_list.rb
-rw-r--r-- root/root     10421 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/logical_table_remove.rb
-rw-r--r-- root/root       165 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/parameters.rb
-rw-r--r-- root/root      2290 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/sharding/range_expression_builder.rb
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/table/
-rw-r--r-- root/root     38188 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/table/table.so
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters/
-rw-r--r-- root/root      5420 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/plugins/token_filters/stop_word.so
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/
-rw-r--r-- root/root        64 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/accessor.rb
-rw-r--r-- root/root       740 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/backtrace_entry.rb
-rw-r--r-- root/root      1333 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/command.rb
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/command_line/
-rw-r--r-- root/root      9991 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/command_line/grndb.rb
-rw-r--r-- root/root      3525 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/command_line_parser.rb
-rw-r--r-- root/root      1799 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/context.rb
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/context/
-rw-r--r-- root/root       549 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/context/error_level.rb
-rw-r--r-- root/root      7695 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/context/rc.rb
-rw-r--r-- root/root      1567 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/database.rb
-rw-r--r-- root/root       189 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/error.rb
-rw-r--r-- root/root       344 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/eval_context.rb
-rw-r--r-- root/root      1665 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression.rb
-rw-r--r-- root/root       341 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_rewriter.rb
-rw-r--r-- root/root      1172 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_rewriters.rb
-rw-r--r-- root/root      5453 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_size_estimator.rb
-rw-r--r-- root/root       341 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree.rb
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/
-rw-r--r-- root/root       266 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/accessor.rb
-rw-r--r-- root/root      1815 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/binary_operation.rb
-rw-r--r-- root/root       393 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/constant.rb
-rw-r--r-- root/root      1413 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/function_call.rb
-rw-r--r-- root/root       269 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/index_column.rb
-rw-r--r-- root/root       759 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/logical_operation.rb
-rw-r--r-- root/root       265 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/options.rb
-rw-r--r-- root/root       314 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/procedure.rb
-rw-r--r-- root/root       332 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree/variable.rb
-rw-r--r-- root/root      3002 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/expression_tree_builder.rb
-rw-r--r-- root/root        71 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/fixed_size_column.rb
-rw-r--r-- root/root       203 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/id.rb
-rw-r--r-- root/root      1203 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/index_column.rb
-rw-r--r-- root/root       310 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/index_cursor.rb
-rw-r--r-- root/root       192 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/index_info.rb
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/initialize/
-rw-r--r-- root/root       404 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/initialize/post.rb
-rw-r--r-- root/root        46 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/initialize/pre.rb
-rw-r--r-- root/root       971 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/logger.rb
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/logger/
-rw-r--r-- root/root       687 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/logger/level.rb
-rw-r--r-- root/root       153 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/object.rb
-rw-r--r-- root/root       392 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/operator.rb
-rw-r--r-- root/root       255 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/plugin_loader.rb
-rw-r--r-- root/root       215 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/query_logger.rb
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/query_logger/
-rw-r--r-- root/root       941 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/query_logger/flag.rb
-rw-r--r-- root/root       741 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/record.rb
-rw-r--r-- root/root      1486 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/require.rb
-rw-r--r-- root/root      1014 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/scan_info.rb
-rw-r--r-- root/root     11960 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/scan_info_builder.rb
-rw-r--r-- root/root      9439 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/scan_info_data.rb
-rw-r--r-- root/root       362 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/scan_info_search_index.rb
-rw-r--r-- root/root      2782 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/table.rb
-rw-r--r-- root/root       462 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/table_cursor.rb
-rw-r--r-- root/root        74 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/variable_size_column.rb
-rw-r--r-- root/root       323 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/groonga/scripts/ruby/writer.rb
lrwxrwxrwx root/root         0 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/libgroonga.so.0 -> libgroonga.so.0.0.0
-rw-r--r-- root/root   5703268 2016-10-29 22:31 ./usr/lib/arm-linux-gnueabihf/libgroonga.so.0.0.0
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/doc/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/doc/libgroonga0/
-rw-r--r-- root/root      3228 2016-10-29 22:31 ./usr/share/doc/libgroonga0/changelog.Debian.gz
-rw-r--r-- root/root     10156 2016-10-29 13:11 ./usr/share/doc/libgroonga0/copyright
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/lintian/
drwxr-xr-x root/root         0 2016-10-29 22:31 ./usr/share/lintian/overrides/
-rw-r--r-- root/root       382 2016-10-29 04:33 ./usr/share/lintian/overrides/libgroonga0


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


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

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

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

Build Architecture: armhf
Build-Space: 250768
Build-Time: 2255
Distribution: stretch-staging
Host Architecture: armhf
Install-Time: 411
Job: groonga_6.1.0-2
Machine Architecture: armhf
Package: groonga
Package-Time: 2732
Source-Version: 6.1.0-2
Space: 250768
Status: successful
Version: 6.1.0-2
--------------------------------------------------------------------------------
Finished at 2016-11-06T07:30:10Z
Build needed 00:45:32, 250768k disc space